Logging
Erfassung strukturierter Ereignis‑ und Zustandsdaten zur Fehlersuche, Überwachung und Compliance.
Klassifikation
- KomplexitätMittel
- AuswirkungTechnisch
- EntscheidungstypArchitektur
- OrganisationsreifeFortgeschritten
Technischer Kontext
Prinzipien & Ziele
Use Cases & Szenarien
Kompromisse
- Exponieren sensibler Daten in Logs ohne Maskierung.
- Übermäßige Logging‑Last beeinträchtigt Systemperformance.
- Inkorrekte Zeitstempel oder fehlende Korrelation erschweren Analysen.
- Nutze strukturierte Formate (z. B. JSON) und feste Feldnamen.
- Führe Korrelations‑IDs ein und propagier diese im Request‑Pfad.
- Maskiere oder vermeide PII vor zentraler Speicherung.
I/O & Ressourcen
- Quellcode‑Instrumentierung für strukturierte Logausgaben.
- Zentrale Pipeline (Forwarder, Ingest, Indexer).
- Definition von Retention, Maskierung und Zugriffsrechten.
- Durchsuchbare zentrale Logdatenbank oder Index.
- Dashboards, Alerts und Audit‑Reports.
- Anonymisierte Export‑Artefakte für Analysen.
Beschreibung
Logging bezeichnet das strukturierte Erfassen von Ereignissen, Zuständen und Metriken in Software- und Infrastrukturkomponenten. Es dient Fehlersuche, Monitoring, Compliance und forensischer Analyse. Gute Logpraktiken definieren Format, Kontext, Aufbewahrung und Zugriffskontrolle, um Nutzbarkeit, Performance und Datenschutz auszubalancieren. Sie erfordert Entscheidungen zu Volumen, Retention und zentraler vs. dezentraler Speicherung.
✔Vorteile
- Verbesserte Fehlerdiagnose und schnellere Problembehebung.
- Fundament für Monitoring, KPIs und SLA‑Überwachung.
- Unterstützung von Compliance, Audits und forensischer Analyse.
✖Limitationen
- Hohe Datenmengen können Speicher- und Kostenprobleme verursachen.
- Unstrukturierte Logs sind schwer zu durchsuchen und zu korrelieren.
- Falsche Retention kann Datenschutzverletzungen oder Datenverlust verursachen.
Trade-offs
Metriken
- Log‑Durchsatz (Einträge/s)
Anzahl der pro Sekunde erzeugten oder indexierten Logeinträge.
- Median‑Latenz beim Schreiben
Zeitspanne, bis Logeinträge persistent und verfügbar sind.
- Kosten pro GB pro Monat
Monatliche Speicherungskosten relativ zum Volumen.
Beispiele & Implementierungen
Zentralisiertes JSON‑Logging
Alle Dienste senden strukturierte JSON‑Logs an eine zentrale Pipeline für Suche und Alerting.
Korrelations‑IDs für verteilte Traces
Request‑IDs werden durch Services durchgereicht, um Ereignisse über Systemgrenzen zu verknüpfen.
Retention Policy für Compliance
Logs werden gemäß regulatorischen Anforderungen revisionssicher archiviert und nach Ablauf gelöscht.
Implementierungsschritte
Audit vorhandener Logs und Formate durchführen.
Schema und Feldkonventionen definieren, Instrumentierung anpassen.
Zentrale Pipeline aufbauen, Retention und Zugriff regeln, Alerting einbinden.
⚠️ Technische Schulden & Engpässe
Tech Debt
- Alte unstrukturierte Logformate, die Migration erschweren.
- Fehlende Redaktionsregeln für Feldnamen und Schemaversionen.
- Monolithische, nicht skalierbare zentrale Logspeicher.
Bekannte Engpässe
Beispiele für Missbrauch
- Speichern von Passwörtern oder Kreditkartendaten im Klartext.
- Übermäßiges Debug‑Logging in Produktivsystemen ohne Sampling.
- Verwendung unterschiedlicher Feldnamen für dieselben Konzepte.
Typische Fallen
- Annahme, dass Logs automatisch durchsuchbar sind ohne Indexierung.
- Nichtbeachtung von Zeitzonen und Timestamp‑Genauigkeit.
- Fehlende Zugriffsprotokollierung auf Logdaten selbst.
Erforderliche Fähigkeiten
Drivers (Architectural Drivers)
Constraints
- • Kostenbudget für Storage und Retention
- • Datenschutzrechtliche Vorgaben (GDPR, Aufbewahrungsfristen)
- • Leistungseinbußen bei synchronem Logging