Script para evitar o acionamento de alertas repetidos de um arquivo de log

4

Eu tenho um requisito para desenvolver um script bash para acionar alter para os erros e avisos, lendo todos os arquivos de log de serviços. Temos quase 700 serviços, eu uso uma API para baixar logs de serviços um por um e acionar o correio de uma única máquina.

Durante o primeiro loop, salvei o log após enviar o alerta. No próximo loop, eu vou fazer diff com log recém-baixado e log já salvo, então vou verificar os erros na saída do diff e acionar o email. Desta forma, evito enviar alertas repetidos.

Mas não me sinto confortável em armazenar logs de todos os 700 serviços para comparação, pois ocupa muito espaço na minha máquina.

Existe uma lógica alternativa para evitar o envio de alertas repetidos?

    
por NIjanthan 11.08.2016 / 06:08

1 resposta

2

Supondo que os logs tenham registros de data e hora, o que eles devem fazer, basta lembrar o último registro de data e hora de cada log. Em seguida, no novo log, você pula todas as entradas com um registro de data e hora mais antigo. Assim, você pode encurtar cada registro para uma linha com o registro de data e hora. Isso não é muita memória.

    
por 11.08.2016 / 06:33