http-webhook-log-verbose

<acct-file>

Подробная запись в журнал о работе вебхука
в конфигурации это строкаhttp-webhook-log-verbose falseвнутри блока <acct-file>
Почему пачки не уходят

По умолчанию в журнал пишутся только ошибки. Строка добавляет сообщения об обычной работе и делает запись об ошибках подробнее.

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

Пишет в общий журнал MTA, а не в отдельный, — путь задаётся директивой log-file.

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

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

Включают на время разбора:

Значение Когда
false (умолчание) обычная работа
true пачки не уходят, надо понять почему

Порядок разбора. Файлы копятся → включить эту строку → посмотреть код ответа приёмника → лечить по коду: 401 — токен, 413 — размер пачки, 5xx — приёмник.

Умолчание «только ошибки» и назначение — из руководства (§ 3.3.11.23). Порядок разбора по коду ответа — наш.
Пример в конфигурации
# на время разбора: пачки копятся, причина неизвестна
<acct-file /var/log/pmta/webhook.json>
    http-webhook-url https://hub.example.com/api/telemetry/pmta/7
    http-webhook-log-verbose true</acct-file>
После разбора строку убирают: на минутных пачках она добавляет несколько строк в минуту с каждого узла парка.
жёлтым — — имена директив, голубым — блоки. Так же они подсвечены и в тексте карточки.
▲

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

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

Ищут причину неотправки в журнале приёмника

наш опыт

Чем чреватоЕсли запрос до приёмника не доходит — не разрешается имя, закрыт выход в сеть, не сходится сертификат, — в его журнале не будет ничего. Причина видна только со стороны узла.
Как заметитьНа приёмнике тишина, на узле копятся файлы.
Как правильноВключить подробную запись на узле и читать журнал MTA.

Оставляют подробную запись включённой

наш опыт

Чем чреватоМинутные пачки дают несколько строк в минуту с каждого узла. Журнал MTA растёт, ротация ускоряется, и записи о доставке вытесняются раньше срока.
Как заметитьЖурналы за нужный день уже удалены ротацией.
Как правильноВернуть false после разбора.
Совместимость
PowerMTA 6.0
описана в руководстве этой версии · платформа: любая
С какой версии директива доступна, вендор указывает не для всех — здесь пометки нет. Имя встречается и в издании руководства 5.0.
Справочные данные
Синтаксис
http-webhook-log-verbose <boolean>
Значения
yes | no | true | false
Умолчание
false § 3.3.11.23
Применение
reload, перезапуск не нужен
Очередь
уже поставленное в очередь не затронет
Где писать
<acct-file>
Сколько раз
один раз в блоке
Всё здесь — из руководства, с разделом.
Наследование
Наследования нет: строка живёт внутри своего <acct-file> и касается только его отправок. При нескольких потоках учёта включать её стоит на том, который разбирают.
Как проверить на узле
Смотрим журнал MTA, отобрав строки вебхука:
grep -i webhook /var/log/pmta/pmta.log | tail -30
При включённой строке будут видны и успешные отправки, и коды ответов. Пусто при копящихся файлах означает, что дело не доходит даже до попытки, — проверяйте имя в адресе и доступность сети.
В Хабе
Цена ошибки
обратимо: вредит, пока стоит
Сценарии
Собрать телеметрию