Назад | Перейти на главную страницу

Подавить сообщение Monit "Экземпляр Monit изменен" при остановке / запуске

Я установил 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