Monolog можно настроить так, чтобы он отправлял письмо, когда возникает ошибка в приложением. Такая конфигурация должна включать в себя несколько вложенных обработчиков во избежании получения слишком большого количества писем. Эта конфигурация может показаться сложной на первый взгляд, однако если рассматривать каждый обработчик в отдельности то все довольно просто.
# app/config/config_prod.yml monolog: handlers: mail: type: fingers_crossed action_level: critical handler: buffered buffered: type: buffer handler: swift swift: type: swift_mailer from_email: [email protected] to_email: [email protected] subject: An Error Occurred! level: debug
Обработчик mail представляет собой fingers_crossed(скрещенные пальцы) обработчик, который срабатывает только когда уровень действия, в данном случае значение critical будет достигнуто. Затем он регистрирует все, включая сообщения ниже уровня действий. Критический уровень срабатывает только для 5xx ошибок HTTP кода. Установка обработчика означает, что выход затем передается на буферном обработчика.