Zwei Logs, eine Geschichte
Eine Zeitleiste ordnet Ereignisse aus mehreren Logs nach der Uhrzeit. Erst dadurch sehen Sie, was zuerst geschah und was nur eine Folge davon war.
Im Onlineshop eines Fahrradladens in Köln fällt nachts die Kasse aus. Das Anmeldelog zeigt Fehlversuche, das Weblog zeigt Anfragen. Jedes Log allein sagt wenig. Zusammen sagen sie, in welcher Reihenfolge es geschah.
Am Ende dieser Lektion
Notiz
Ich kann aus mehreren Logs eine Zeitleiste bauen.
Schlüsselwörter
| Begriff | Was er bedeutet | Beispiel |
|---|---|---|
| Logzeile | ein Eintrag mit Zeit, Quelle und Meldung | |
| Zeitstempel | Datum und Uhrzeit in einer Logzeile | |
| Korrelation | Ereignisse aus verschiedenen Logs, die zusammengehören | |
| Zeitleiste | alle Ereignisse in der Reihenfolge ihrer Zeit | |
| Zeitzone | der Zeitunterschied zur Weltzeit UTC | +0000 |
| Rauschen | viele harmlose Einträge, die Wichtiges verdecken |
Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.
Eine Logzeile hat feste Teile
Programme schreiben Logs nach einem festen Muster, damit Werkzeuge sie lesen können. Lernen Sie das Muster einmal, dann ist jede Zeile leicht zu lesen.
Die Zeile des Anmeldelogs nennt Zeit, Rechner, Programm und eine Meldung. Die Zeile des Weblogs beginnt mit der Adresse und enthält die Zeit in eckigen Klammern.
Ein Beispiel: zwei Zeilen, zwei Muster
| Log | Beispielzeile | Zeit steht |
|---|---|---|
| Anmeldelog | Oct 14 02:14:09 shop01 sshd[311]: Failed password for root from 198.51.100.9 port 4410 ssh2 | Im dritten Wort: 02:14:09 |
| Weblog | 203.0.113.5 - - [14/Oct/2026:02:14:20 +0000] "GET /kasse HTTP/1.1" 500 512 | In eckigen Klammern, am Ende: 02:14:20 |
Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.
Erst filtern, dann zählen
grep behält nur Zeilen mit einem Suchwort. grep -c zählt sie, statt sie auszugeben.
Mit awk schneiden Sie eine Spalte aus. sort ordnet, und uniq -c zählt gleiche Zeilen, die nebeneinanderstehen. Darum steht sort davor.
Fehlversuche in drei Beispielzeilen zählen
printf "Failed password\nAccepted password\nFailed password\n" | grep -c "Failed"Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.
Statuscodes zählen
printf "a 200\nb 404\nc 404\n" | awk '{print $2}' | sort | uniq -cHier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.
Drei Zeilen nach der Zeit ordnen
printf "02:15:10 web Anfrage\n02:14:55 auth Anmeldung\n02:14:55 web Zugriff\n" | sortHier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.
Eine Zeitleiste verbindet die Logs
Sie suchen in jedem Log die Zeilen, die zum Vorfall gehören. Sie lesen aus jeder die Zeit. Dann ordnen Sie alle Zeilen nach dieser Zeit.
Zeilen mit derselben Adresse in beiden Logs gehören vermutlich zusammen. Das nennt man Korrelation.
Ein Beispiel: eine kleine Zeitleiste
| Zeit | Quelle | Ereignis |
|---|---|---|
| 02:14:09 | Anmeldelog | Fehlversuch für root von 198.51.100.9 |
| 02:14:20 | Weblog | Anfrage an /kasse von 203.0.113.5, Antwort 500 |
| 02:14:31 | Anmeldelog | Fehlversuch für root von 198.51.100.9 |
| 02:15:02 | Weblog | Anfrage an /admin von 198.51.100.9, Antwort 404 |
Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.
Ein häufiger Fehler
Warnung
Viele glauben, die Uhrzeiten zweier Logs lassen sich ohne Prüfung vergleichen. Das Weblog nennt oft eine Zeitzone, das Anmeldelog nicht. Zwei Rechner können auch verschieden gehende Uhren haben. Prüfen Sie zuerst Zeitzone und Uhr beider Quellen. Notieren Sie jeden Unterschied im Bericht.