Logging (deutsch: Protokollierung) bezeichnet das systematische Aufzeichnen von Ereignissen durch Betriebssysteme, Dienste und Anwendungen. Die gesammelten Einträge heißen Logs oder Log-Dateien und sind das wichtigste Werkzeug für Fehlersuche, Monitoring und Sicherheitsanalyse.

Log-Ebenen

Die meisten Logging-Frameworks kennen abgestufte Schweregrade, damit man Wichtiges schnell findet:

  • DEBUG: detaillierte Entwicklungs-Informationen, im Betrieb oft deaktiviert
  • INFO: normale Betriebsereignisse (Start, Login, Request)
  • WARN: auffällige, aber nicht kritische Situationen
  • ERROR: Fehler, die eine Funktion beeinträchtigen
  • FATAL: schwerwiegende Fehler, nach denen das System oft nicht weiterarbeiten kann

Logs unter Linux

Unter Linux landen System-Logs traditionell in /var/log/ — zum Beispiel syslog für allgemeine Ereignisse und auth.log für Anmeldeversuche. Moderne systemd-Systeme protokollieren zentral über journalctl; die systemctl- und journalctl-Befehle zeigen die Einträge an. Das klassische Syslog-Protokoll sammelt Logs auch über das Netzwerk von mehreren Geräten an zentraler Stelle.

Warum Logging wichtig ist

  • Fehlersuche: Ein Stack Trace oder Fehlereintrag zeigt, was vor einem Absturz passiert ist.
  • Sicherheit: Logs dokumentieren Anmeldeversuche und verdächtige Aktionen — Grundlage für Audits und die Erkennung von Angriffen.
  • Observability: Zusammen mit Metriken und Traces machen Logs ein System beobachtbar (siehe Observability).

Praxis-Tipps

  • Log-Dateien wachsen unbegrenzt — Rotation (zum Beispiel logrotate) verhindert, dass die Platte vollläuft.
  • Sensible Daten (Passwörter, personenbezogene Daten) gehören nicht in Logs — Datenschutz und DSGVO beachten.
  • Zu viel Logging kostet Leistung; Daemons mit Log-Optionen lassen sich meist pro Ebene konfigurieren.

Verwandte Begriffe: Log, Syslog, Monitoring.