Logfiles sind die Gedächtnisprotokolle eines Systems.
Egal ob Webserver, Datenbank oder Linux-Kernel – fast jede Anwendung schreibt Meldungen in Dateien, die man als Logs bezeichnet.
Für Administratoren und Entwickler sind sie eine unverzichtbare Quelle, um Fehler zu finden, Angriffe zu erkennen oder Abläufe zu verstehen.
In diesem Kurs lernst du Schritt für Schritt, wie du Logdateien im Terminal lesen, bereinigen und auswerten kannst. Am Ende wirst du in der Lage sein, typische Logfiles selbstständig zu analysieren und wichtige Informationen herauszufiltern.
🔹 Was sind Logfiles?
Ein Logfile ist eine Textdatei, die Ereignisse, Meldungen oder Fehler einer Software aufzeichnet.
Beispiele:
- System-Logs (z. B.
/var/log/syslog
,/var/log/auth.log
) - Webserver-Logs (z. B. Apache
access.log
, Nginxerror.log
) - Datenbank-Logs (z. B.
mysql.log
,mariadb.err
) - Anwendungs-Logs (Programme, die ihre eigenen Logs schreiben)
👉 Jede Zeile entspricht in der Regel einem Ereignis: Zeitpunkt, Quelle, Meldung.
🔹 Warum Logs wichtig sind
- Fehlerdiagnose: Welche Ursache hat ein Absturz?
- Sicherheitsanalyse: Wer hat sich wann eingeloggt? Wurde ein Angriff versucht?
- Performance: Welche Ressourcen wurden wann beansprucht?
- Monitoring: Trends erkennen, bevor Probleme entstehen.
👉 Logs sind die erste Anlaufstelle für jeden Admin.
🔹 Typischer Aufbau einer Logzeile
Beispiel: Apache-Access-Log
192.168.1.10 - - [24/Sep/2025:14:22:15 +0200] "GET /index.html HTTP/1.1" 200 532
- IP-Adresse: 192.168.1.10
- Zeitstempel: [24/Sep/2025:14:22:15 +0200]
- Methode & URL: „GET /index.html“
- Statuscode: 200 (OK)
- Antwortgröße: 532 Bytes
👉 Mit den richtigen Tools kannst du hier sofort erkennen, wie viele Besucher deine Seite aufgerufen haben, welche Fehler vorkamen oder welche IP am aktivsten war.
🔹 Werkzeuge für die Analyse
Im Kurs lernst du die wichtigsten Unix-Werkzeuge kennen:
cat
,less
,tail
→ Logs lesengrep
, Regex → bestimmte Meldungen filternsed
→ Daten bereinigen (z. B. Zeitstempel entfernen)awk
→ Daten auswerten (z. B. Fehler zählen)sort
,uniq
→ Häufigkeiten bestimmencut
,tr
→ Felder und Zeichen umwandeln
👉 Diese Tools arbeiten perfekt zusammen – in Pipelines.
🔹 Ziel des Kurses
Am Ende kannst du:
- Logfiles lesen & verstehen.
- Filter setzen, um nur relevante Informationen zu sehen.
- Statistiken erstellen (z. B. meistbesuchte Seiten, häufigste Fehlercodes).
- Sicherheitsmeldungen identifizieren (z. B. fehlgeschlagene Logins).
- Eigene Auswertungs-Skripte schreiben, die dir Arbeit abnehmen.
✅ Zusammenfassung
- Logfiles sind Textdateien mit Ereignissen.
- Sie helfen bei Diagnose, Sicherheit, Performance & Monitoring.
- Sie folgen oft einem Muster: Zeitstempel, Quelle, Meldung.
- Im Kurs lernst du, Logs lesen, bereinigen, analysieren und automatisieren.
👉 Im nächsten Kapitel starten wir praktisch: Kapitel 1 – Logs im Terminal lesen (tail, less, cat, grep).
📚 Inhaltsverzeichnis
👉 Log-Analyse Kapitel 1: Logs im Terminal lesen – cat, less, tail & grep
👉 Log-Analyse Kapitel 2: Filtern mit grep und regulären Ausdrücken
👉 Log-Analyse Kapitel 3: Logs bereinigen mit sed – inkl. Mehrdatei-Änderungen
👉 Log-Analyse Kapitel 4: Logs analysieren mit awk
👉 Log-Analyse Kapitel 5: Logs kombinieren mit grep, sed, awk, sort, uniq & cut
👉 Log-Analyse Kapitel 6: Praxisprojekt – Apache-/Nginx-Access-Logs analysieren
👉 Log-Analyse Kapitel 7: Praxisprojekt – Systemlogs analysieren (auth.log & journalctl)
⭐ Bonus-Kapitel
👉 Log-Analyse Kapitel 8 (Bonus): Eigene Auswertungs-Skripte für Logs schreiben
👉 Log-Analyse Kapitel 9 (Bonus): Logs visualisieren mit CSV & gnuplot