У меня есть это в сценарии мониторинга (строки 11-13):
check program foo with
path "/usr/local/bin/foo.sh" with timeout 300 seconds
if status != 0 then alert dan@example.com
monit reload говорит:
/etc/monit/conf.d/example:13: Error: syntax error 'dan@example.com'
Ни один из Примеры показать электронное письмо с предупреждением, но оно мне нужно. Почему я не могу дать здесь?
Пользуюсь Monit 5.5.
Раскомментируйте / добавьте эти строки в конфигурационный файл monit:
set mailserver localhost
set alert me@mycompany.com
Затем сделайте что-нибудь вроде следующего. Обратите внимание, что после слова "alert" ничего нет.
check program list-files with path "/bin/ls -lrt /tmp/"
if status != 0 then alert
Проверьте документацию на http://mmonit.com/monit/documentation/monit.html#setting_a_local_alert_statement у него есть следующий пример
check process mybar with pidfile /var/run/mybar.pid
alert foo@bar only on { timeout }
Посмотрите конкретно на: https://mmonit.com/monit/documentation/monit.html#Setting-an-alert-recipient (новая ссылка), как я это читал, для локального оповещения (если вам нужно дополнительное письмо только для этого оповещения), вы должны добавить его в конец текущего раздела.
По ссылке выше:
check host myhost with address 1.2.3.4
if failed port 3306 protocol mysql then alert
if failed port 80 protocol http then alert
alert foo@baz # Local service alert
Вы заметите, что неудавшаяся проверка и уведомление находятся во второй и третьей строках, затем в последнюю строку добавляется локальный адрес электронной почты.