Esta foi uma tarefa muito demorada. E sim, certamente precisava ser roteirizado para procurar várias seqüências de caracteres em vários logs diferentes ao mesmo tempo. Mas recentemente tive que fazer isso e foi bastante doloroso. No entanto, está pronto e pode ser baixado no seguinte link:
Download do script de pesquisa de log
A maneira como isso funciona é bem simples.
Cenário 1: Monitore UMA sequência em apenas UM arquivo de log
./logsearch.sh localhost /var/tmp/logXray autonda /var/log/messages 60m 'can.*t.*open' '.' 1 2 single_errCheck -ndshow
Cenário 2: monitore várias seqüências de caracteres em apenas um arquivo de log
./logsearch.sh localhost /var/tmp/logXray autonda /var/log/messages 60m 'can.*t.*open_P_ntpd.*stat' '.' 1 2 multi_errCheck -ndshow
Cenário 3: Monitorar seqüências únicas / múltiplas em vários arquivos de log
./logsearch.sh localhost /var/tmp/logXray autonda /var/log 60m 'can.*t.*open_P_ntpd.*stat' '.' 1 2 multi_err_multi_logCheck -ndshow
Notas:
O _P_ significa OR - Substitui o tubo "|" símbolo porque é menos provável que você tenha que procurar por uma string contendo "_P_". Se você não deseja digitar "_P_", basta substituir o _P_ por "|".
Ao usar esse script, os parâmetros que você alterará com frequência são:
- O arquivo de log ou diretório de log a ser monitorado
- A idade em que um arquivo de log deve ser para ser monitorado.
- As seqüências / padrões que você deseja assistir
- A tag - este é o penúltimo argumento que você precisa fornecer. Ele registra estatísticas sobre o (s) arquivo (s) de log que você está monitorando em / var / tmp / logXray
- A opção de log -ndshow - Esse é o parâmetro que você deseja usar se desejar gerar as entradas dos logs encontrados que correspondem aos padrões que você especificou. Se você quiser apenas ver a contagem total de cada padrão encontrado, substitua '-ndshow' por '-ndfoundmul'.
Ao usar '-ndfoundmul', você obterá uma saída semelhante a:
[root@dgphxtest001]# ./logsearch.sh localhost /var/tmp/logXray autonda /var/log/messages 60m 'can.*t.*open_P_ntpd.*stat' '.' 1 2 blahblahA -ndfoundmul
OK: [/var/log/messages][1] /var/log/messages:P=(can_t_open=0 ntpd_stat=0)_F=(117s)_R=(228,228=0)
Solução para o problema do pôster original: procure várias seqüências em vários arquivos de log
./logsearch.sh localhost /var/tmp/logXray autonda /var/log 60m 'fatal_P_error_P_critical_P_failure_P_warning' '.' 1 2 multierr_logCheck -ndshow
Sistemas operacionais: Isso foi testado no Ubuntu e Red Hat
grep
pode levar mais de um argumento de arquivo.