DevOps

Logging richtig machen

Strukturiertes Logging das dir bei Fehlersuche hilft

Console.log ist fuer Entwicklung okay, aber in Produktion brauchst du strukturiertes Logging. Ohne gute Logs fliegst du blind wenn etwas schiefgeht.

Pro-Tip — Der schnelle Weg
Nutze JSON-Format fuer alle Logs. So kannst du sie spaeter filtern, durchsuchen und automatisch analysieren. Text-Logs sind in Produktion wertlos.
Seite 1
1

Logger einrichten

Installiere Winston oder Pino als Logger. Beide unterstuetzen JSON-Output, verschiedene Log-Level und mehrere Transports gleichzeitig.

npm install pino pino-pretty
2

Log Levels definieren

Nutze die Standard-Level: error fuer Fehler, warn fuer Probleme, info fuer wichtige Events, debug fuer Entwicklung. In Produktion loggst du nur error bis info.

const pino = require('pino');
const logger = pino({ level: process.env.LOG_LEVEL || 'info' });
logger.info({ userId: 123, action: 'login' }, 'User logged in');
3

Request-ID mitloggen

Generiere fuer jeden API Request eine eindeutige ID. Logge diese ID in jedem Log-Eintrag mit. So kannst du den kompletten Pfad eines Requests nachverfolgen.

app.use((req, res, next) => {
req.requestId = crypto.randomUUID();
req.log = logger.child({ requestId: req.requestId });
next();
});
4

Sensitive Daten ausschliessen

Logge niemals Passwoerter, Tokens oder Kreditkartendaten. Erstelle eine Redact-Liste die diese Felder automatisch aus den Logs entfernt.

const logger = pino({ redact: ['req.headers.authorization', 'body.password', 'body.token'] });
5

Logs zentral sammeln

Schick deine Logs an einen zentralen Service wie Better Stack oder Grafana Loki. So kannst du ueber alle Server hinweg suchen und Dashboards bauen.

Seite 2
Warum das funktioniert
  • Gute Logs reduzieren die Fehlersuche von Stunden auf Minuten
  • JSON-Logs sind maschinenlesbar und koennen automatisch analysiert werden
  • Request-IDs machen verteilte Systeme debuggbar
  • Zentrale Logs geben dir Ueberblick ueber alle Services gleichzeitig
Tipps
  • Logge das Was und Warum, nicht das Wie. 'User 123 konnte nicht einloggen weil Passwort falsch' statt 'auth function returned false'
  • Setze Log Rotation ein damit deine Festplatte nicht volllaeuft
  • In Produktion niemals auf debug Level loggen, das killt die Performance
  • Strukturierte Logs sparen dir Stunden bei der Fehlersuche
Seite 3
Bereit für den nächsten Schritt?

KIWorld VibeCoding Masterclass

Du willst nicht nur einzelne Tools einrichten, sondern wirklich lernen wie du mit KI komplette Apps, Websites und SaaS-Produkte baust? Über 700 Videos — von Anfänger bis Fortgeschritten — in jedem Bereich. Von der Idee bis zum fertigen Produkt, ohne eine Zeile Code selbst zu schreiben.

Jetzt Masterclass ansehen