Como desativar alertas de início / parada da instância Monit?

10

Monit envia um alerta toda vez que o daemon monit é interrompido ou iniciado. Esta é uma informação desagradável e não útil.

De acordo com os documentos, eu defino:

set alert [email protected] but not on { instance }

... que deve enviar alertas para esse e-mail, a menos que estejam na categoria "instância", que é definida como inicializações / paradas.

No entanto, ainda recebo alertas gerados. Isso é super chato. Claramente devo estar perdendo alguma coisa.

Estamos executando o Monit 5.2.4

    
por Winfield 29.03.2011 / 18:30

4 respostas

1

Não consegui consertar isso dentro do monit e tive que criar uma camada de processamento no e-mail de monit para filtrar essas notificações de instância monit antes da entrega, interceptando-as.

Estamos usando o pager duty para acumular e despachar avisos do monit e de vários outros sistemas, portanto, neste caso, adicionei uma regra de filtragem no serviço Monit usando um regex baseado em assunto para filtrar os emails de notificação de instância monit.

    
por 20.04.2011 / 15:01
7

A Monit pode, de acordo com a documentação gerar vários alertas:

Event:     | Failure state:              | Success state:
---------------------------------------------------------------------
action     | "Action done"               | "Action done"
checksum   | "Checksum failed"           | "Checksum succeeded"
bytein     | "Download bytes exceeded"   | "Download bytes ok"
byteout    | "Upload bytes exceeded"     | "Upload bytes ok"
connection | "Connection failed"         | "Connection succeeded"
content    | "Content failed",           | "Content succeeded"
data       | "Data access error"         | "Data access succeeded"
exec       | "Execution failed"          | "Execution succeeded"
fsflags    | "Filesystem flags failed"   | "Filesystem flags succeeded"
gid        | "GID failed"                | "GID succeeded"
icmp       | "Ping failed"               | "Ping succeeded"
instance   | "Monit instance changed"    | "Monit instance changed not"
invalid    | "Invalid type"              | "Type succeeded"
link       | "Link down"                 | "Link up"
nonexist   | "Does not exist"            | "Exists"
packetin   | "Download packets exceeded" | "Download packets ok"
packetout  | "Upload packets exceeded"   | "Upload packets ok"
permission | "Permission failed"         | "Permission succeeded"
pid        | "PID failed"                | "PID succeeded"
ppid       | "PPID failed"               | "PPID succeeded"
resource   | "Resource limit matched"    | "Resource limit succeeded"
saturation | "Saturation exceeded"       | "Saturation ok"
size       | "Size failed"               | "Size succeeded"
speed      | "Speed failed"              | "Speed ok"
status     | "Status failed"             | "Status succeeded"
timeout    | "Timeout"                   | "Timeout recovery"
timestamp  | "Timestamp failed"          | "Timestamp succeeded"
uid        | "UID failed"                | "UID succeeded"
uptime     | "Uptime failed"             | "Uptime succeeded"

Conseguimos corrigir isso ao nosso lado, definindo (endereços alterados para proteger os inocentes):

SET ALERT [email protected] ON { invalid, nonexist, timeout, resource, size, timestamp}
SET ALERT [email protected] ON {action, permission, pid, ppid, instance, status}

Isso encaminha as mensagens para os endereços de que gostamos. Você pode defini-los globalmente ou localmente, mas nossos alertas são apenas globais.

As subposições dos TESTES DE SERVIÇO são: link correspondem razoavelmente aos tipos acima.

Para cada processo ou recurso agendado do seu servidor, você deve ser capaz de sugerir o que é importante para você em inglês e combinar esse desejo com um dos testes mencionados nos TESTES DE SERVIÇO. Por exemplo, se estou executando o Apache, sei que me preocupo com:

  • O PID no arquivo PID ainda está em execução? (não existente)
  • O PID mudou sem o meu conhecimento? (pid)
  • O serviço está respondendo em tempo hábil a uma reinicialização? (tempo limite)

Para um daemon personalizado que pesquisa, eu posso me preocupar se o arquivo de log está sendo atualizado com mensagens de status regularmente (timestamp).

    
por 30.07.2013 / 16:59
6

Estou usando a versão 5.2.5 do Monit e, usando o seguinte, os alertas de monit pararam de chegar

set alert [email protected] not {instance}

    
por 05.01.2012 / 05:19
1

Simplesmente diga para cancelar depois de um certo número de novas tentativas no período de acordo com esses exemplos .

    
por 19.04.2011 / 22:46

Tags