Liebe Pythonfreunde,
ich wollte mal fragen wie ich mein Problem am besten angehe.
Ich würde gerne ein Log File analysieren und das aktiv also wird das Log File der ganzen Zeit geschrieben. Das heißt die Analyse muss auch immer in Echtzeit geagieren z.B. im Log steht ein Error dann soll sofort eine Funktion aufegrufen werden die das dann bearbeitet.
1. Wie soll ich das Log File in echt Zeit analysieren ?
2. Mit welchem Modul wenn es eins gibt mache ich das habe mir schon mal http://docs.python.org/lib/module-logging.htmlangeschaut aber ist halt eben nur um Logs zu erstellen ?
3. Wie kann ich bei einem bestimmten Eintrag sofort eine Funktion aufrufen ?
Ich kann mir jetzt schon denken das dies sehr komplex wird da alles in Echtzeit Läuft.
Viele Grüße
BasterTWO
Echtzeit Log File verarbeiten
So kompliziert ist das gar nicht. Entweder du "pipe"st die Logdatei direkt in das Pythonprogramm oder die Ausgabe von ``tail -f logdatei``. Dann musst Du Python mit der Option `-u` aufrufen, damit die Eingabe nicht gepuffert wird, also immer sofort verarbeitet wird.
Im Programm selbst kann man dann mit einer Schleife über `sys.stdin` die Eingabe zeilenweise verarbeiten und entweder mit den Methoden und Operationen auf Zeichenketten oder mit Hilfe des `re`-Moduls bestimmte Zeilen erkennen.
Im Programm selbst kann man dann mit einer Schleife über `sys.stdin` die Eingabe zeilenweise verarbeiten und entweder mit den Methoden und Operationen auf Zeichenketten oder mit Hilfe des `re`-Moduls bestimmte Zeilen erkennen.