Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: romanrsr en 14 Mayo 2014, 17:10 pm



Título: [Ayuda] Script de monitoreo de logs.
Publicado por: romanrsr en 14 Mayo 2014, 17:10 pm
Hola amigos, como están? Les comento cual es mi problema. Tengo el siguiente Script, que lo que hace basicamente es buscar un patron de error dentro de una carpeta que contiene logs. El script funciona bien, el problema es que cada vez que me encuentra un patron de error nuevo, me envia un mail con todos los errores, y yo solo quiero que me envie los nuevos errores encontrados. Alguien me puede dar una mano? Muchas Gracias!

Código:
 errors=$(grep "System Error Pattern Here" /var/log/)
echo "$errors" > /tmp/current-errors.log

if      [ -e "/tmp/prior-errors.log" ]
         then echo "prior-errors.log Exists" > /dev/null
else
        touch /tmp/prior-errors.log | echo "" > /tmp/prior-errors.log
fi

newentries=$(diff --suppress-common-lines -u /tmp/prior-errors.log /tmp/current-errors.log | grep '+[0-9]')

if
                test "$newentries" != "" && test "$errors" = ""
                then echo "No New Errors" > /dev/null
        elif
                test "$newentries" != ""
                then echo "$errors" | mailx -s "WARNING: Error Messages Detected" noc@yourcompanyhere.com
                echo "$errors" > /tmp/prior-errors.log
fi