PID Banner

Montag, 5. September 2011

Logfile-Analyse mit der Kommandozeile und Linux-Tools

Wie oft steht man als Software-Entwickler vor dem Problem eine umfassende Logfile-Analyse zu machen? Und dann stellt man fest, dass das Logfile nicht richtig rotiert wurde, und alles in einer Datei steht? Was tun?

Klar kann man die ganze Datei lokal herunterladen und dann versuchen mit Windows-Editor oder ähnlichen Tools zu arbeiten. Allerdings wird in den meisten Fällen der Speicher sehr schnell knapp. Besser wäre es schon auf dem Produktiv-Server das Logfile zu analysieren und die interessanten Teile daraus zu extrahieren.


Ist das Produktiv-System ein Unix-ähnliches Betriebssystem hat man von haus aus viele Tools die einem bei diesem Problem helfen können.

Eines davon ist grep. Mit diesem Programm kann ein Datenstrom gefiltert werden. Die Ausgabe erfolgt wiederum als Datenstrom. Um grep zu füttern, braucht man noch ein weiteres Unix-Tool: cat. Damit wird eine Textdatei gelesen und per Datenstrom ausgegeben.

Verbindet man nun diese beiden Programme mit einer Pipe, dann erfährt man die ganze Mächtigkeit der Unix-Shell.


Es wird die Datei catalina.out gelesen, alle Zeilen die "2010-10-21 10:" enthalten und die 10 folgenden Zeilen (Parameter -A10) werden gefiltert und in die Datei test.log geschrieben. Schon hat man alle relevanten Einträge in einer Datei kompakt versammelt.

Keine Kommentare: