Все письма ставятся в очередь, cron разбирает её пачками (vestnik_batch_size).
- Отправленные удаляются из очереди и попадают в журнал со статусом «Отправлено».
- При ошибке письмо остаётся в очереди и отправляется снова: первая пауза —
vestnik_retry_delayминут, каждая следующая втрое больше (5, 15, 45, 135…), не больше суток. - После
vestnik_max_attemptsпопыток письмо переносится в журнал со статусом «Ошибка» и причиной; его можно отправить снова кнопкой в журнале. - Кнопка «Разобрать очередь» на вкладке «Очередь» запускает отправку вручную.
- Текст писем в журнале удаляется через
vestnik_log_body_daysдней (там бывают ссылки сброса пароля), записи целиком — черезvestnik_log_keep_days. Очистку делает cron примерно раз в час.
* * * * * php /путь/к/сайту/core/components/vestnik/cron.php >> /путь/vestnik-cron.log 2>&1