Предотвращение того, чтобы мой регистратор засыпал меня сообщениями

Я встроил регистратор (Monolog) в свой проект PHP, который настроен на регистрацию системных событий (информация / debug), но также и ошибки (error / критические)

Я настроил его так, что при возникновении критической ошибки вызываются 2 системы, одна отправляет почту, а другая отправляет sms.

Теперь в случае, если база данных умирает, критическое событие регистрируется и, таким образом, отправляется электронное письмо и sms. Но поскольку сайт, вероятно, будет привлекать некоторый трафик, это событие, вероятно, будет запускаться несколько раз в минуту, в часы пик даже в секунду. На самом деле наверное по каждому запросу к сайту.

Как я могу предотвратить это, предотвратить флуд / рассылку спама с помощью sms-сообщений и писем? Должен ли я изменить свой код с помощью какого-либо регулирования, чтобы одно и то же сообщение об ошибке не отправлялось в течение заданного промежутка времени (как бы трудно различить типы ошибок), должен ли я собирать все ошибки и отправлять их раз в несколько минут (дает медленнее время отклика) или есть системы, в которые я могу отправлять сообщения об ошибках, которые позаботятся об этом за меня? Я думаю в направлении сборщика журналов, который можно настроить для отправки SMS / писем с определенной степенью серьезности, но с каким-то дросселированием?


person ChrisR    schedule 26.10.2012    source источник


Ответы (1)


Я бы заставил его вести себя так же, как ignore_repeated_errors и ignore_repeated_source http://ca2.php.net/manual/en/errorfunc.configuration.php#ini.ignore-repeated-errors

Нет необходимости получать уведомления об одной и той же ошибке снова и снова. Если я получаю SMS и электронное письмо (резервная копия) о том, что база данных не работает, этого должно быть достаточно для системного администратора.

Если вам нужно, отправьте его максимум 3 раза в течение часа или двух.

person Anthony Hatzopoulos    schedule 26.10.2012