track-jobs

<domain>

Показывать ли задания приёмника на странице монитора
в конфигурации это строкаtrack-jobs falseвнутри блока <domain>
Разбивка очереди по рассылкам

Строка включает подсчёт заданий по конкретному приёмнику. При включённой строке задания, связанные с этим приёмником, появляются на его подробной странице в веб-мониторе. Умолчание — false.

Задание — это рассылка с точки зрения MTA: письма, подданные с одним идентификатором задания. Строка отвечает на вопрос «какие именно рассылки стоят в очереди к этому приёмнику», а не «сколько писем всего».

Величина живёт только в мониторе. В учёте идентификатор задания есть и без этой строки — полем jobId; здесь речь о разбивке очереди, которую монитор без неё не покажет.

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

Главная ловушка — включить в блоке со звёздочкой. Учёт заданий начнёт вестись по всем приёмникам сразу, а страница монитора у каждого своя — пользы от этого ровно столько же, а работы узлу кратно больше.
Что делает Хаб. Не пишет: страницами монитора мы не пользуемся, а разбивку по рассылкам собираем из учёта — там идентификатор задания есть у каждой записи.

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

Рекомендуемые значения

Включают точечно, у проблемного приёмника:

Значение Когда
no (умолчание) всегда
yes у одного приёмника у него копится очередь и надо понять, чья это рассылка
yes в <domain *> почти никогда
Умолчание false и то, что задания появляются на подробной странице приёмника в мониторе, — из руководства (§ 3.3.10.105). Совет включать точечно — наш.
Пример в конфигурации
# у этого приёмника копится очередь — хотим видеть, чья рассылка
<domain yahoo.com>
    track-jobs yes</domain>
В <domain *> та же строка включает подсчёт для всех приёмников разом — работы кратно больше, пользы столько же.
жёлтым — — имена директив, голубым — блоки. Так же они подсвечены и в тексте карточки.
▲

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

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

Включают для всех приёмников сразу

наш опыт

Чем чреватоПодсчёт ведётся по каждому приёмнику, а смотрят страницу одного. Работа узла растёт кратно числу приёмников без всякой пользы.
Как заметитьСтрока стоит в блоке со звёздочкой.
Как правильноОграничить блоком конкретного приёмника; после разбора убрать.

Ищут здесь идентификатор задания для учёта

наш опыт

Чем чреватоВ записи учёта поле задания есть и без этой строки. Она про разбивку очереди в мониторе, а не про состав записей.
Как заметитьСтроку включили ради поля в учёте, а поле было и раньше.
Как правильноДля учёта смотреть record-fields; эта строка — только про монитор.
Совместимость
PowerMTA 6.0
описана в руководстве этой версии · платформа: любая
С какой версии директива доступна, вендор указывает не для всех — здесь пометки нет. Имя встречается и в издании руководства 5.0.
Справочные данные
Синтаксис
track-jobs <boolean>
Значения
yes | no | true | false
Умолчание
false § 3.3.10.105
Применение
reload, перезапуск не нужен
Очередь
уже поставленное в очередь не затронет
Где писать
<domain>
Сколько раз
один раз в блоке
Всё здесь — из руководства, с разделом.
Наследование
Директива живёт в <domain> и сливается по обычному правилу блоков получателей: побеждает самое точное совпадение по имени приёмника. Те же три уровня действуют по адресу отправки.
Как проверить на узле
Результат виден на странице приёмника в мониторе; из консоли то же показывает запрос к нему:
curl -s 'http://NODE:1000/domains?format=json' | head -c 400
Список заданий появится в подробностях приёмника. Пусто при включённой строке означает, что заданий в очереди к нему сейчас нет.
В Хабе
Цена ошибки
обратимо: вредит, пока стоит
Сценарии
Классификация отказов · Настроить темп под провайдера