Simple Automated Solution that covers a lot of scenarios:
ANWENDUNG:
logrobot localhost [default-dir],fixer,[exit-codes],[command/script-to-run-per-exit-code] [feature] [logfile] [age] [str-1] [str-2] [WARN] [CRIT] [tag] [option]
Beispiel:
logrobot localhost /tmp/logXray,fixer,0y-1y-2y,0-uname,1-who,2-uptime autonda /var/log/kern.log 60m 'error' '.' 1 2 app_err_monitor -ndshow
Mit diesem Tool können Sie bestimmte Muster in einer Protokolldatei überwachen und lösen dann einen Befehl oder Skript, wenn die Muster gefunden werden ... oder NICHT gefunden!
Die Skripts oder Befehle können so eingestellt werden, dass sie auf Basis von Schwellenwerten und Exit-Codes ausgeführt werden.
Werkzeug kann direkt here heruntergeladen werden.
oh, eine weitere Sache, die 'Schwanz -fn0 logfile' scheint da der HTTP-Server Log-Datei schnell umbenannt und gzip'ed verfallen werden. Das Skript überwacht immer noch den alten Dateideskriptor, denke ich? Gibt es eine Möglichkeit, Datei-Inode oder etwas nach einer gewissen Zeit für den "Schwanz" -Befehl automatisch zu aktualisieren? – est
Fügen Sie einfach einen --retry zum Tail-Befehl hinzu oder verwenden Sie -F anstelle von -f. Das sollte es tun. – Zizzencs
Beachten Sie auch 'grep -q', um den Rückgabecode ohne Anzeige der übereinstimmenden Zeilen festzulegen. –