Suprimir mensagem Monit 'Monit instance changed' no stop / start

1

Tenho o monit instalado em alguns laptops / desktops do usuário para que ele possa garantir que alguns processos estejam sempre em execução / sejam reiniciados conforme necessário. Mas, como os dispositivos são desligados / reiniciados com frequência, recebo freqüentemente uma mensagem como a que não quero nem me preocupo, pois eles estão me informando que o sistema foi reiniciado. Desejo suprimir as mensagens que parecem acontecer automaticamente quando a monit inicia / pára.

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.

Mas uma vez que o sistema está ativo, eu quero receber alguns alertas sobre alguns serviços / recursos que eu quero ser notificado, então simplesmente desabilitar o e-mail não é o que eu quero fazer.

Como posso suprimir a mensagem na inicialização / reinicialização sem desativar completamente o email?

    
por Zoredache 18.04.2013 / 21:53

2 respostas

1

Ah, claro ...

Para suprimir alertas Monit para uma determinada verificação, você precisa usar a diretiva noalert .

Por exemplo, posso verificar o daemon do cron, que reinicia semanalmente. Talvez eu não queira esse email na minha caixa de entrada todos os domingos ...

check process cron
    noalert [email protected]
    with pidfile "/var/run/crond.pid"
    start program = "/sbin/service crond start"
    stop program = "/sbin/service crond stop"

Isso funciona para qualquer verificação Monit, então, para lidar com os alarmes de instância do sistema, você pode suprimir adicionando o noalert sob a entrada check system localhost :

  check system localhost
    noalert [email protected]

Experimente. Isso ainda deixa quaisquer serviços / daemons reais sob proteção Monit, mas reduz a conversa. Ótimo para aplicativos mal comportados ...

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
    
por 29.04.2013 / 21:54
8

Para filtrar os e-mails em particular quando monit é iniciado / interrompido, você pode usar o filtro de evento instance :

set alert [email protected] not on { instance }

Como na documentação :

Event:     | Failure state:            | Success state:              
---------------------------------------------------------------------
...
INSTANCE   | "Monit instance changed"  | "Monit instance changed not"
...
    
por 10.11.2014 / 12:26

Tags