<acct-file>
Записи учёта сначала попадают в буферы операционной системы и лишь потом на диск. Строка заставляет сбрасывать их регулярно. Умолчание — false.
Разница видна только при аварии. При обычной остановке MTA буферы сбрасываются сами. Строка спасает от внезапного — отключения питания, паники ядра, жёсткой перезагрузки: без неё последние записи пропадут, а хвост файла может оказаться битым.
Цена — обращения к диску. На потоке учёт пишется постоянно, и регулярный сброс превращает последовательную запись в череду вынужденных обращений. На узле с быстрым накопителем это малозаметно, на медленном — заметно.
🔎 Довод в пользу такого выбора у нас есть, и он не про диск: основной поток учёта идёт вебхуком, то есть пачками раз в минуту. Максимум, что теряется при аварии, — незавершённая минута; всё остальное уже ушло к нам и лежит в базе. Файловый блок при этом страховочный, и требований к его хвосту нет.
В основном файле шаблон пишет ещё sync-msg-create false и sync-msg-update false — строки из конфигурации Protosender, к учёту отношения не имеют. В руководстве PowerMTA 6 их нет ни в главе 3, ни в указателе; узлы строки принимают. Смысл дают комментарии образца конфигурации прежних версий PowerMTA: сброс писем очереди на диск после приёма и после отметки обработанных получателей. false быстрее, но при аварии системы письмо, ещё не записанное на диск, может пропасть, а часть получателей — получить его повторно.
Решение зависит от того, чем узел рискует:
| Значение | Когда |
|---|---|
| false (умолчание) | учёт уходит вебхуком или пробел в статистике терпим |
| true | файл учёта — единственный источник, узел на ненадёжном питании |
# файл учёта — единственный источник, и терять хвост нельзя <acct-file /var/log/pmta/acct.csv> records d, b sync true</acct-file>
что делают не так и чем это кончается1 ошибка▶
наш опыт
1 связь
grep -n -A10 '<acct-file' /etc/pmta/config | grep -i 'sync\|acct-file'
3 статьи
◇Что узел рассказывает о себе и по каким каналамСемь поверхностей наблюдения: веб-монитор, консоль в четырёх форматах, журнал, учёт, поиск по учёту, метрики и выгрузка во внешнюю аналитику.◇Два обработчика входящих отчётов и что с ними делатьОтказы письмом и жалобы разбираются двумя одинаково устроенными блоками; у каждого свой список адресов и своя пара решений о судьбе письма.◇Пять способов очереди отдать письмоОчередь не обязана ходить по SMTP: она умеет писать в файл, запускать программу, стучаться по HTTP или выбрасывать.