Logging und Log-Level
Kurz: Logging bedeutet, dass ein Programm wichtige Ereignisse in Textzeilen aufschreibt. Log-Level wie DEBUG, INFO, WARN und ERROR zeigen, wie wichtig eine Meldung ist.
Genauer: Logs sind das Tagebuch einer Anwendung. Wenn etwas schiefgeht, ist oft die einzige Spur, was das Programm vorher gemeldet hat. Gute Logs sind strukturiert, enthalten Zeit, Ort und Zusammenhang und verraten keine Geheimnisse.
Im Detail
- Level: DEBUG (Entwicklung), INFO (normaler Ablauf), WARN (ungewöhnlich, aber unkritisch), ERROR (Fehler), FATAL (Absturz).
- Strukturiert: JSON-Zeilen mit Feldern wie
time,level,requestIdlassen sich maschinell filtern. - Korrelation: Eine Request-ID in jeder Zeile verbindet alle Meldungen eines Aufrufs.
- Nie loggen: Passwörter, Tokens, komplette Kreditkartennummern, unnötig viele personenbezogene Daten.
- Betrieb: Logs werden gesammelt, durchsucht und aufbewahrt (zum Beispiel mit Loki oder Elasticsearch) und nach einer Frist gelöscht.
Siehe auch: Observability: Logs, Metriken und Traces