shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Script para monitorar


From: willian mayan
Subject: Re: [shell-script] Script para monitorar
Date: Fri, 4 May 2018 10:41:24 +0100

Fala pessoal blz?
Eu particularmente quando tenho algo que precisa ser monitorado em arquivo escrevo o script para me trazer somente um(ou vários) resultado e executar uma ação( nesse caso enviar email).
A parte do tempo eu adiciono a chamada do meu script no cron, assim não vai ter uma instrução sleep rodando. Se temos o cron porque não usar? :)

# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed

10 * * * * /path/meu_script.sh

Em 3 de maio de 2018 23:51, Maik Alberto address@hidden [shell-script] <address@hidden> escreveu:
 

só complementando para que não dispare em toda consulta após atingir os 10 primeiros erros.


LOG=/tmp/log

while [ 1 ];
do
 sleep 600
 if [[ $( grep -c "ERRO" $LOG ) -ge 10 ]]; then
   #envia email
   mv $LOG $LOG$(date +%s)
   > $LOG
 fi
done




De: address@hidden.br <address@hidden.br> em nome de Tiago Peczenyj address@hidden [shell-script] <address@hidden.br>
Enviado: quinta-feira, 3 de maio de 2018 19:10
Para: address@hidden.br
Assunto: Re: [shell-script] Script para monitorar
 
 

Ola

Existem varias formas de fazer isso, entretanto um script feito a mão pode não ser a ferramenta mais adequada.

Vc quer algo que monitore e alerte em caso de ocorrências, se for possível utilizar a stack ELK ( elasticsearch, logstash e kibana ) vc tem uma imensa flexibilidade mas demanda tempo pra configurar e usar (talvez precise estruturar os seus logs, emitindo em json por exemplo) exemplo:
Get started with the documentation for Elasticsearch, Kibana, Logstash, Beats, X-Pack, Elastic Cloud, Elasticsearch for Apache Hadoop, and our language clients.

Para algo mais simples: dado que vc pode executar o script via crontab a cada x tempos, bastaria:

Veja se a saida do grep -c ajuda

$ grep -c “expressão de erro” /var/log/seuarquivo.log

Se ajudar, bastaria fazer

if [[ $( grep ... ) -ge 10 ]]; then
  # envia email
fi

Mas isso é uma versão simplificada. Na prática vc tem q pensar onde procurar e como

Em qui, 3/05/2018 às 23:25, Cesar Rodrigues address@hidden [shell-script] <address@hidden.br> escreveu:
 

Boa noite, pessoal! 

Queria uma luz da galera do grupo... 

Estou precisando criar um script que busque na hora atual ou a cada 10 minutos, a quantidade de ERROS em um determinado arquivo de log, e se tiver uma quantidade maior que x erros, enviar um email notificando o problema.

Alguém aqui já fez isso ou tem uma ideia boa? 

Desde já agradeço!

--
Tiago B. Peczenyj

http://about.me/peczenyj




--
Willian.Mayan
GNU/Linux user:#536163

reply via email to

[Prev in Thread] Current Thread [Next in Thread]