crond in eine eigene Datei loggen lassen

Written by  on Juni 16, 2007 

Gerade wenn man Skripte wie das vom letzten Eintrag benutzt, wird ohne das führende Minuszeichen jede Minute ein unnötiger Log-Eintrag unter /var/log/messages generiert. Meine erste Überlegung dazu war es, überhaupt die Logs von Cron zu deaktivieren. Aber da ich ja vielleicht auch mal wissen möchte, ob ein Cronjob überhaupt gelaufen ist, lagere ich das jetzt in eine eigene Logdatei unter /var/log/cron aus.

Dazu sind nur ein paar kleine Änderungen notwendig:

/etc/syslog-ng/syslog-ng.conf:

filter f_messages   { not facility(news, mail, cron) and not filter(f_iptables); };
destination cron { file("/var/log/cron"); };
log { source(src); filter(f_cron); destination(cron); };

In der ersten Zeile wurde nur eingestellt, dass die Meldungen von der CRON facility nicht noch zusätzlich in der /var/log/messages landen. Bei den letzten zwei Zeilen wurden nur mehr die Kommentarzeichen entfernt (unter openSuSE 10.1 und 10.2)!

Anschließend noch den syslog Dienst neustarten und unter /etc/logrotate.d/ eine Konfigurationsdatei anlegen, damit das neue Logfile nicht nur unendlich wächst.

Hier noch ein simples Beispiel dazu:

/var/log/cron {
    compress
    dateext
    maxage 100
    rotate 10
    size=+1024k
    notifempty
    missingok
    copytruncate
}

Category : Allgemein

Tags :

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.