Amigos, ta dificil aqui uahauhauha será que podem me ajudar? Por algum motivo o script abaixo le todas as linhas mas não refaz as checagens, vejam:
#!/bin/bash # Set some variables here logfile="/var/log/httpd/server_error_log" pattern="[error]" email="har...@server.com" erros_notificados="/root/script/erros_notificados.log" # read each new line as it gets written to the log file tail -fn0 $logfile | while read line ; do # check each line against our pattern echo "$line" | grep -i "$pattern" # if a line matches... if [ $? = 0 ]; then linha_tratada=`echo "$line" | awk '{print $9, $10, $11, $12, $13, $14, $15, $16, $17, $18, $19, $20, $21, $22, $23, $24, $25, $26, $27, $28, $29, $30, $31, $32, $33, $34, $35, $36, $37, $38, $39, $40}'` # procura linha_tratada no arquivo de erros existente # se nao existir, cadastra no arquivo e envia um email com conteudo de line if [ $(grep -c "$linha_tratada" $erros_notificados) -eq 0 ]; then echo $linha_tratada >> $erros_notificados # send an email! echo "Found an error: $line" | mail $email -s ERROR fi fi done O problema é: if [ $(grep -c "$linha_tratada" $erros_notificados) -eq 0 ]; then A primeira linha ele pega e checa, se é zero, ele cadastra a linha no arquivo certinho, só que quando chega a segunda, terceira, etc… ele não checa mais e da sempre o valor como 0 e ai cadastra linhas iguais no arquivo, mesmo já tendo cadastrado anteriormente, ai envia emails sobre problemas que já foram notificados toda hora. Alguém sabe me ajudar a descobrir o pq q ele não checa todas as vezes? agradeço desde já att Harlei Em 5 de outubro de 2011 01:16, Harlei Liguori Marcelino <hligu...@gmail.com>escreveu: > Obrigado pela resposta meu amigo ;) vou verificar esses softwares... > > mas comecei a desenvolver um shell pra isso tb. Estou agarrado tentando > tirar as primeiras colunas do arquivo de log do apache onde tem IP de origel > e tal, pq essa parte geralmente será diferente mesmo. Alguém sabe como > reverter o resultado do print do awk por exemplo para mostrar todas as > colunas exceto as primeiras ou algo q faça isso em shell? > > att > > Harlei > > > > 2011/10/5 P. J. <pjotam...@gmail.com> > > Em 5 de outubro de 2011 00:17, Harlei Liguori Marcelino >> <hligu...@gmail.com> escreveu: >> > Amigos, >> > >> >> > ou Software que faça a varredura do arquivo de erros do apache de X em X >> > minutos, verifique os erros existentes e os envie por e-mail. >> >> http://www.icinga.org/ >> >> http://www.zabbix.com/ >> >> -- >> | .''`. A fé não dá respostas. Só impede perguntas. >> | : :' : >> | `. `'` >> | `- P.J. - http://wiki.dcc.ufba.br/~PeeJay >> >> >> -- >> To UNSUBSCRIBE, email to debian-user-portuguese-requ...@lists.debian.org >> with a subject of "unsubscribe". Trouble? Contact >> listmas...@lists.debian.org >> Archive: >> http://lists.debian.org/cacnf0piled_6lzx16be+o4fk1uzikgexol_1svqxdr9exdw...@mail.gmail.com >> >> >