Я написал сценарий, который отправляет мне смс-уведомление. Я вызываю с действием exec в тесте monit. Это работает, но меня заваливают сообщениями. Есть ли способ подавить отправку последующих сообщений, если проверка не удалась, пока она не завершится успешно?
Вот конфигурационный файл monit:
check system my_host if loadavg (1min) > 3 then alert if loadavg (1min) > 3 then exec "/usr/local/sms_notifier/sms_notifier.php all cpu load average exceeds 3" as uid nobody and gid sms if loadavg (5min) > 2 then alert if memory usage > 90% then alert if memory usage > 90% then exec "/usr/local/sms_notifier/sms_notifier.php all memory usage exceeds 90%" as uid nobody and gid sms if cpu usage (user) > 70% then alert if cpu usage (system) > 30% then alert if cpu usage (wait) > 30% then alert
Вам нужно добавить «циклы» в ваш конфиг.
check system localhost
if loadavg (15min) > 8 for 10 cycles then alert