dsn-failed-subject-template

Global

Шаблон темы в отчётах о неудаче
в конфигурации это строкаdsn-failed-subject-templateвнутри блока Global
Тема, по которой отчёт узнают

Значение — строка темы. В неё подставляются те же девять значений исходного письма, что и в тело отчёта: dsn-failed-body-template-from перечисляет их полностью.

Смысл настройки — узнаваемость. Отчёт приходит человеку или в разбор машиной, и тема решает, отличат ли его от прочей почты: тема исходного письма в ней помогает связать отчёт с рассылкой.

Умолчания руководство не называет — не написана, MTA берёт свою.

Главная ловушка — тема исходного письма в теме отчёта. Она удобна для человека и опасна снаружи: отчёт уходит отправителю, а тема рассылки в нём проходит через чужие серверы и попадает в чужие журналы.

Вторая половина — та же, что у шаблона тела: имя подстановки руководство пишет двумя способами, и неверное написание не вызывает ошибки, а остаётся в теме как есть. Проверять надо письмом.

Что делает Хаб. Не пишет — и проявиться строка не может: формирование отчётов выключено suppress-local-dsn во всех источниках подачи.
Рекомендуемые значения

Что ставить. Тема решает одну задачу — узнаваемость:

Значение Когда
не писать отчёты читает машина по стандартным полям, а не по теме
своя строка без подстановок отчёты читает человек, и достаточно опознать их как отчёты
строка с темой исходного письма нужно связать отчёт с конкретной рассылкой глазами

Третье удобнее всего и хуже всего с точки зрения того, что уходит наружу.

Назначение и общность набора подстановок с шаблоном тела — из руководства, § 3.3.1.30. Умолчания там не названо. Разбор про уход темы наружу наш.
Пример в конфигурации
# тема исходного письма помогает связать отчёт с рассылкой
dsn-failed-subject-template "Email failed, Re: ${subject}"
Подстановка берёт тему исходного письма. Она же пройдёт через чужие серверы вместе с отчётом — это стоит учитывать, если тема говорит о содержимом рассылки.
жёлтым — — имена директив, голубым — блоки. Так же они подсвечены и в тексте карточки.
▲

Типичные ошибки и проблемы

что делают не так и чем это кончается2 ошибки▶

Кладут тему рассылки в тему отчёта не подумав

наш опыт

Чем чреватоОтчёт уходит наружу и несёт тему рассылки через чужие серверы и в чужие журналы. Для рекламной рассылки это обычно неважно, для транзакционной — совсем нет.
Как заметитьВ теме отчётов видны темы писем с личными подробностями.
Как правильноОставить в теме отчёта опознавательную строку без подстановки темы исходного письма.

Ошибаются в написании подстановки

§ 3.3.1.31

Чем чреватоОшибки не будет: подстановка останется в теме как есть, и получатель увидит фигурные скобки вместо значения.
Как заметитьВ теме пришедшего отчёта видно имя подстановки.
Как правильноПроверить письмом и оставить написание, которое сработало.
Совместимость
PowerMTA 6.0
описана в руководстве этой версии · платформа: любая
С какой версии директива доступна, вендор указывает не для всех — здесь пометки нет. Имя встречается и в издании руководства 5.0.
Справочные данные
Синтаксис
dsn-failed-subject-template "<template>"
Значения
строка темы с подстановками
Применение
reload, перезапуск не нужен
Очередь
уже поставленное в очередь не затронет
Где писать
Global
Сколько раз
один раз в блоке
Всё здесь — из руководства, с разделом.
Наследование
Директива пишется в корне файла конфигурации и действует на весь узел: блока для неё нет, и наследования тоже. Разных тем для разных отправителей задать нельзя.
Как проверить на узле
Строку видно в конфигурации, но проверять надо письмом:
grep -n 'dsn-failed-subject-template\|suppress-local-dsn' /etc/pmta/config
Если подавление отчётов включено, строка не проявится. Если нет — отправить письмо на несуществующий адрес и посмотреть тему пришедшего отчёта: неверная подстановка останется в ней как есть.
В Хабе
Цена ошибки
безопасно: неверное значение ничего не ломает
Сценарии
Приём входящей почты