[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Analizador de Log AWK com Shell Script
From: |
Michel I. Moreira |
Subject: |
Analizador de Log AWK com Shell Script |
Date: |
Thu, 10 May 2007 12:55:44 -0300 |
User-agent: |
Thunderbird 1.5.0.7 (X11/20060922) |
Bom dia Nobres Colegas da Lista
Seguindo a dica do Júlio consegui fazer meu trabalho, o qual
disponibilizo para todos ver.
Gostaria de algumas opiniões, criticas, dicas ou sei-la o q mais ;-)
Tá funcionando, mas eu queria algo mais elegante, ou um meio de colocar
tudo dentro do AWK sem usar o shell script pra chamar o AWK.
Ah sim, se o meu professor participar da lista....ja pode corrigir e dar
a nota viu.......xD......Mas ja esta la postado no meu portifolio no
Teleduc essa versão.
Um abraço a todos
Michel
******************************************************************************************************************
Arquivo: analizador.sh
#!/bin/bash
clear
echo
"----------------------------------------------------------------------------"
echo "LOG ANALIZADO"
echo
"----------------------------------------------------------------------------"
awk '{print NR " " $0}' console.log > console_numerado.log
cat console_numerado.log
echo
"----------------------------------------------------------------------------"
echo "RESULTADO DA ANALISE: "
echo
"----------------------------------------------------------------------------"
./analisa.wmj console_numerado.log mensagens.wmk avisos.wmk
echo
"----------------------------------------------------------------------------"
echo "OBS: Você pode salvar o resultado com o seguinte"
echo "comando: OpticalAnalog.sh > Resultado.txt "
echo
"----------------------------------------------------------------------------"
******************************************************************************************************************
Arquivo: analisa.wmj
#!/usr/bin/awk -f
qtdErr=0
qtdAvs=0
FILENAME == "console_numerado.log" { con_log_n[$1]=$0 }
FILENAME == "mensagens.wmk" { msg_err[$1]=$0 }
FILENAME == "avisos.wmk" { avs_err[$1]=$0 }
END {
print "ERROS ENCONTRADO"
for(contLog in con_log_n)
{
for(contMsg in msg_err)
{
if(index(con_log_n[contLog],msg_err[contMsg]) != 0 )
{
#print con_log_n[contLog-1]
print con_log_n[contLog]
qtdErr=qtdErr+1
}
}
}
print " "
print "AVISOS ENCONTRADO"
for(contLog in con_log_n)
{
for(contAvs in avs_err)
{
if(index(con_log_n[contLog],avs_err[contAvs]) != 0 )
{
print con_log_n[contLog]
qtdAvs=qtdAvs+1
}
}
}
print " "
print "Quantidade de Erros: "qtdErr
print "Quantidade de Avisos: "qtdAvs
}
******************************************************************************************************************
Arquivo: Console.log
mmoreira@mmoreira-desktop:~$ rm -k
rm: invalid option -- k
Tente `rm --help' para mais informação.
mmoreira@mmoreira-desktop:~$ ls xxxiikkk
ls: xxxiikkk: Arquivo ou diretório inexistente
mmoreira@mmoreira-desktop:~/AWK$ cd Sergio/
mmoreira@mmoreira-desktop:~/AWK/Sergio$
mmoreira@mmoreira-desktop:~/AWK/Sergio$ ./trabio foda.cu
bash: ./trabio: Arquivo ou diretório inexistente
mmoreira@mmoreira-desktop:~/AWK/Sergio$ mata_sergio
bash: mata_sergio: comando não encontrado
******************************************************************************************************************
Arquivo: mensagens.wmk
Arquivo ou diretório inexistente
comando não encontrado
invalid option
******************************************************************************************************************
Arquivo: avisos.wmk
Tente `rm --help' para mais informação.