» SelfLinux » Systemverwaltung » syslog-ng » Abschnitt 2 SelfLinux-0.12.3
zurück Startseite Kapitelanfang Inhaltsverzeichnis PDF-Download (50 KB) GFDL weiter

SelfLinux-Logo
Dokument syslog-ng  Autor
 Formatierung
 GFDL
 

2 Ein Anwendungsfall

Als ich anfing, mir ein Logfile-Analyse-Werkzeug zu bauen, merkte ich, dass der Standard  syslog Dämon von Linux und vielen Unix-Systemen doch erhebliche Einschränkungen mit sich bringt. Ich wollte ein Logfile in einer ähnlichen Form, wie es moderne Anwendungen wie cups, samba oder Apache machen. Das Datum sollte mit Jahresangabe sein, Priorität, Facility und das Programm, was loggt, sollten ebenfalls auftauchen. Eine Zeile sollte etwa so aussehen:

[2003/10/13 12:00:42] info mail fetchmail fetchmail[30924]: No mail for ...
    

Zuerst das Datum in einer samba-like Form, dann die Log-Priorität, die Facility (also der Systembereich, der loggt), das Programm und die Message. Alle erzeugten Logs des Systems, die über  syslog laufen, sollten in einer Logdatei landen. Hierzu fügte ich in der syslog-ng.conf folgende Zeilen hinzu:

destination mysyslog {
  file("/var/log/mysyslog"
  owner("root")
  group("adm")
  perm(0640)
  template( "[$YEAR/$MONTH/$DAY $HOUR:$MIN:$SEC] $PRIORITY
             $FACILITY $PROGRAM $MESSAGE\n")); };

log { source(src);  destination(mysyslog); };
    

Mit destination wird ein  destination-Objekt festgelegt, welches mysyslog heißt und mit der Datei /var/log/mysyslog verbunden wird. Das Ausgabe-Format beschreibt ein Template. Über die Zeile log wird dann ein zuvor definiertes  source-Objekt und mein  destination-Objekt zu einer Log-Aktion zusammengefügt.



zurück Seitenanfang Startseite Kapitelanfang Inhaltsverzeichnis PDF-Download (50 KB) GFDL weiter