Я установил monit на некоторых пользовательских ноутбуках / настольных компьютерах, поэтому он может убедиться, что пара процессов всегда выполняется / перезапускается по мере необходимости. Но поскольку устройства регулярно выключаются / перезапускаются, я часто получаю сообщение, подобное приведенному ниже, которое мне не нужно или которое меня не волнует, поскольку они говорят мне, что система была перезапущена. Я хочу подавить сообщения, которые появляются автоматически при запуске / остановке monit.
Subject: monit alert -- Monit instance changed
Service - system_slaveone
Event - Monit instance changed
Action - start
Date - Thu, 18 Apr 2013 07:53:51
Host - slaveone.example.local (slaveone)
Description - Monit started.
Но как только система заработает, я хочу получать уведомления о паре служб / ресурсов, о которых я хочу получать уведомления, поэтому простое отключение электронной почты - не то, чего я хочу.
Как я могу подавить сообщение при запуске / перезапуске без полного отключения электронной почты?
Чтобы отфильтровать сообщения электронной почты при запуске / остановке мониторинга, вы можете использовать instance
фильтр событий:
set alert myaddress@foo.bar not on { instance }
Как в документация:
Event: | Failure state: | Success state:
---------------------------------------------------------------------
...
INSTANCE | "Monit instance changed" | "Monit instance changed not"
...
Да, конечно...
Чтобы подавить предупреждения Monit для определенной проверки, вам необходимо использовать noalert директива.
Например, я могу проверить демон cron, который перезапускается еженедельно. Может быть, я не хочу, чтобы это письмо было в моем почтовом ящике каждое воскресенье ...
check process cron
noalert zoredache@mdmarra.net
with pidfile "/var/run/crond.pid"
start program = "/sbin/service crond start"
stop program = "/sbin/service crond stop"
Это работает для любой проверки Monit, поэтому для обработки аварийных сигналов экземпляра для системы вы можете подавить, добавив noalert под check system localhost
запись:
check system localhost
noalert zoredache@mdmarra.net
Попытайся. Это по-прежнему оставляет любые реальные сервисы / демоны под защитой Monit, но уменьшает болтовню. Отлично подходит для некорректных приложений ...
check process nslcd
with pidfile "/var/run/nslcd/nslcd.pid" every 2 cycles
noalert ewwhite@bra**ers.com
start program = "/sbin/service nslcd start"
stop program = "/sbin/service nslcd stop"
if 10 restarts within 11 cycles then timeout
if cpu usage > 95% for 11 cycles then restart
if totalmemory > 128 MB then restart