Menü

Linux: Ablösung für Syslog?

Lesezeit: 1 Min.
In Pocket speichern
vorlesen Druckansicht Kommentare lesen 42 Beiträge
Von

Lennart Poettering und Kay Sievers haben einen neuen Logging-Mechanismus entwickelt, der das traditionelle Syslog in Linux ablösen soll. Mit ihrem Journal (ausführliche Beschreibung) wollen die beiden Red-Hat-Entwickler einige Probleme lösen, die sie bei Syslog – dem Industriestandard für Logging auf Unix-Systemen – sehen.

Dazu gehört vor allem, dass Syslog-Einträge beliebige Strings sind, die ohne Metadaten in einer Textdatei abgelegt werden. Das mache es schwierig, die Syslog-Informationen automatisiert auszuwerten und einfache Aufgaben wie "Zeige die letzten zehn Meldungen von Dienst Foo" zu erfüllen. Zudem vermissen Poettering und Sievers Sicherheitsmechanismen: Prozesse können Einträge unter falscher Flagge anlegen, das Log lässt sich im Nachhinein manipulieren, und es gibt keine differenzierte Zugangskontrolle – ein User kann entweder das gesamte Log lesen oder gar keine Einträge. Auch könne Syslog keine Binärdaten speichern, was manchmal erforderlich sei.

Diese – und einige weitere – Kritikpunkte soll der Journal Daemon beseitigen. Logging-Informationen werden binär als Liste von Schlüssel-Wert-Paaren gespeichert; dabei ergänzt der Journal Daemon jeden Log-Eintrag um Metadaten wie Prozess-ID und Name des Senders, User- ID und Group ID und relevante Systeminformationen (Überblick über die bereits definierten Felder). Entwickler sollen für jeden Typ von Logging-Eintrag, den sie benötigen, einen Universally Unique Identifier (UUID) generieren, die der Klassifikation und das Auffinden bestimmter Meldungen erleichtert.

Die Entwickler haben das Journal mit Systemd verheiratet, der den Systemstart steuert und die laufenden Dienste überwacht. Ihr Argument: Logging ist Teil der Diensteverwaltung. Laut Sievers und Poettering sind die Kernfunktionen des Journal Daemon implementiert und im "journal"-Zweig des systemd-Git-Repositories verfügbar. Der Journal Daemon lässt sich sowohl über das klassische Logging-Interface mit printk()(Kernel) und syslog(3) (Userland) als auch über ein natives API ansprechen. Die beiden Entwickler planen, den Syslog-Ersatz in der kommenden Fedora-Version 17 für einige ausgewählte Komponenten zu verwenden.

Lennart Poettering und Kay Sievers arbeiten bei Red Hat und haben sich in den letzten Jahren einen Namen gemacht, indem sie traditionelle Unix-Konzepte durch neue Ideen abgelöst haben. So ist Poettering der Autor der SysV-Init-Alternative Systemd, die Linux ein modernes Startsystem und eine leistungsfähigere Diensteverwaltung bringen soll und zunehmend in die Distributionen einzieht. Weitere Entwicklungen von Poettering sind das Sound-System PulseAudio und das Verzeichnis /run für Laufzeitdaten wie Prozess-IDs, Socket-Informationen und Lock-Dateien. Kay Sievers gehört zu den treibenden Kräften hinter der Idee, alle Programme nach /usr/bin umzuziehen. (odi)