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.