TechDocs


   Rubrik > Admin > Tomcat >


    09.09.2011 15:12:38  Admin > Tomcat    

cronolog - Logfile 'catalina.out' täglich rotieren lassen

Im Tomcat startup Skript werden alle stdin und stderr Ausgaben von Tomcat in die Datei 'catalina.out' umgeleitet.

Das Logfile 'catalina.out' rotiert nicht und wächst immer weiter.

Mit dem cronolog Programm ist es möglich die Datei täglich rotieren zu lassen.

Das cronolog Programm wird in das Startup Skript von Tomcat mit aufgenommen.

Die Ausgaben von Tomcat werden über eine Pipe auf die Standardeingabe von cronolog weitergeleitet. Cronolog schreibt die Ausgaben in ein rotierendes Logfile und legt einen symbolischen Link von 'catalina.out' auf das jeweils aktiveLogfile.

Eintrag aus dem Tomcat Startup Skript.
Tomcat 'catalina.out' Logfile durch ein tägliches Logfile ersetzen, cronolog erstellt einen symbolischen Link 'catalina.out' für die täglich erzeugte Logdatei. :

  org.apache.catalina.startup.Bootstrap "$@" start | \
    cronolog --symlink=${CATALINA_BASE}/logs/catalina.out \
    ${CATALINA_BASE}/logs/catalina_%Y-%m-%d.out >> \
    /dev/null 2>&1 &

Cronolog ist ein Filterprogramm, welches Log Einträge von der Standardeingabe (stdin) bzw. aus einer Pipe liest und an eine Ausgabe-Datei mit einem vorgegebenen Dateinamen anhängt. Der Dateiname wird durch einen Ersetzungsmechanismus aus einer Dateinamen Schablone (Template) erstellt. Der Dateiname kann sich aus Dateinamen und Zeitangaben wie Jahr, Monat, Tag, Stunde ... zusammensetzen. Ändert sich die Zeitangabe, so ändert sich dadurch auch der Dateiname, eine neue Datei wird erzeugt und die nachfolgenden Logfile Einträge dann dort hinein geschrieben.
Cronolog wird oft zur Aufzeichnung der täglichen/monatlichen Logs von Web Server bzw. App-Server wie Tomcat genutzt.
Das Programm läuft auf Unix/Linux und Windows ist in C geschrieben und kann mit dem GNU-Compiler gcc erstellt werden.



Übersicht