Zum Inhalt springen
_CORE
KI & Agentensysteme Unternehmensinformationssysteme Cloud & Platform Engineering Datenplattform & Integration Sicherheit & Compliance QA, Testing & Observability IoT, Automatisierung & Robotik Mobile & Digitale Produkte Banken & Finanzen Versicherungen Öffentliche Verwaltung Verteidigung & Sicherheit Gesundheitswesen Energie & Versorgung Telko & Medien Industrie & Fertigung Logistik & E-Commerce Retail & Treueprogramme
Referenzen Technologien Blog Know-how Tools
Über uns Zusammenarbeit Karriere
CS EN DE
Lassen Sie uns sprechen

Journalctl -- Debugging und Log-Analyse

03. 09. 2022 Aktualisiert: 27. 03. 2026 2 Min. Lesezeit intermediate
Dieser Artikel wurde veröffentlicht im Jahr 2022. Einige Informationen können veraltet sein.

Das Systemd-Journal erfasst Logs von Diensten, Kernel und anderen Quellen in einem indexierten Binaerformat. Journalctl bietet leistungsstarke Filterung, die deutlich besser als grep in /var/log ist, da sie das Kombinieren von Filtern nach Dienst, Prioritaet, Zeit und anderen Metadaten in einer einzelnen Abfrage ermoeglicht. Strukturierte Logs bewahren zudem den Kontext — Sie wissen genau, welcher Prozess und welche PID die Nachricht erzeugt hat.

Grundlagen

journalctl -u nginx                    # Logs eines bestimmten Dienstes
journalctl -fu nginx                   # Follow-Modus — Echtzeit-Ueberwachung
journalctl -n 50 -u myapp              # letzte 50 Zeilen

Filterung

journalctl --since '1 hour ago'        # Logs der letzten Stunde
journalctl --since today               # seit Mitternacht
journalctl -b                          # aktueller Boot
journalctl -p err                      # nur Fehler und hoeher
journalctl -k                          # Kernel-Nachrichten (dmesg-Alternative)
journalctl _UID=1000                   # Logs eines bestimmten Benutzers
journalctl _TRANSPORT=audit            # Audit-Logs

Filter koennen kombiniert werden — beispielsweise zeigt journalctl -u nginx -p warning --since '2 hours ago' Warnungen und Fehler von nginx der letzten zwei Stunden. Die Prioritaetsstufen entsprechen Syslog: emerg, alert, crit, err, warning, notice, info, debug.

Formate und Grep

journalctl -u nginx -o json-pretty     # strukturierte JSON-Ausgabe
journalctl -u nginx -o cat             # Klartext ohne Metadaten
journalctl -u myapp --grep 'error'     # Volltextsuche
journalctl -u myapp -o verbose         # alle Metadatenfelder

Die JSON-Ausgabe ist nuetzlich fuer maschinelle Verarbeitung — sie kann an jq zur Analyse weitergeleitet oder an externe Log-Management-Systeme gesendet werden.

Verwaltung

journalctl --disk-usage                # wie viel Speicher Logs belegen
journalctl --vacuum-size=500M          # auf 500 MB begrenzen
journalctl --vacuum-time=30d           # aelter als 30 Tage loeschen

Fuer dauerhafte Einstellungen bearbeiten Sie /etc/systemd/journald.conf — die Parameter SystemMaxUse und MaxRetentionSec steuern die maximale Log-Groesse und das Alter. Starten Sie systemd-journald nach Aenderungen neu.

Journal ist Ihr Freund

Leistungsstarke Log-Filterung direkt auf dem Server deckt die meisten Diagnoseszenarien ab. Fuer zentralisiertes Logging von mehreren Servern erwaegen Sie Elasticsearch/OpenSearch mit Fluentd oder Grafana Loki mit Promtail.

journalctlsystemdlogging
Teilen:

CORE SYSTEMS Team

Wir bauen Kernsysteme und KI-Agenten, die den Betrieb am Laufen halten. 15 Jahre Erfahrung mit Enterprise-IT.