
Eu estava procurando erros no syslog de um servidor e percebi essas linhas que não tinham nada a ver com o que eu estava procurando, mas estavam alertando o suficiente:
kernel: [8456851.218586] ata2.00: irq_stat 0x08000000, interface fatal error
kernel: [8456851.220076] res 50/00:00:80:45:c1/00:00:08:00:00/e0 Emask 0x10 (ATA bus error)
Como posso ter certeza de que meus servidores me alertarão por e-mail quando ocorrerem erros semelhantes? Preciso pelo menos detectar todos os erros da unidade (quando se trata de servidor H/W, tenho que lidar com interrupções na fonte de alimentação e falhas no HDD mais do que qualquer outra coisa). No entanto, qualquer outra coisa que tenha uma grande chance de indicar uma falha futura é digna de um e-mail, desde que eu não receba muitos falsos negativos e pare de olhar cuidadosamente esses e-mails.
Responder1
Eu uso logcheck
para verificar meus arquivos de log. Ele verifica novas entradas uma vez por hora e me envia por e-mail todas as linhas desconhecidas, bem como linhas conhecidas que são classificadas como incluídas no relatório.
Existem também ferramentas que monitoram seus arquivos de log e enviam e-mails para você quando encontrarem determinado conteúdo.
Responder2
Eu uso o ommail
módulo em rsyslog
. A configuração é simples, você pode usar vários servidores SMTP para enviar seus e-mails de alerta (como failover):
$template mailSubject,"EMERGENCY:"
$template mailBody," %$NOW% %timereported:8:15% %programname%: %msg%\n"
$ActionMailSMTPServer mail1.example.com
$ActionMailFrom [email protected]
$ActionMailTo [email protected]
$ActionMailSubject mailSubject
$ActionExecOnlyOnceEveryInterval 60
*.emerg :ommail:;mailBody
# begin backup action, carried out if primary fails
$ActionExecOnlyWhenPreviousIsSuspended on
$ActionMailSMTPServer mail2.example.com
$ActionMailFrom [email protected]
$ActionMailTo [email protected]
$ActionExecOnlyOnceEveryInterval 60
&