ForHosting KIT · Entwickler-Tools

Log-Zeitstempel parsen

Apaches 25/Jul/2026:14:30:00 +0200, das syslog-Format Jul 25 14:30:00 und 2026-07-25T14:30:00.123Z kommen jeweils als eine ISO-8601-Zeit in UTC zurück, mit Epoch-Millisekunden und dem erkannten Format. Kostenlos in Ihrem Browser.

  • Kostenlos
  • Läuft in Ihrem Browser
  • Ohne Anmeldung
  • Ihre Daten bleiben auf Ihrem Gerät
Nutzen Sie es über WebAPIE-MailTelegramApp bald
Wenn Sie eingeben
Text
2026-07-25T14:30:00.123Z INFO worker started
Erhalten Sie
Iso
2026-07-25T14:30:00.123Z
Epoche (ms)
1.784.989.800.123
Ausgabeformat
iso8601

Logdateien sind sich uneinig, wie ein Zeitstempel geschrieben wird. Ihre App sendet ISO 8601, der Host schreibt Syslog und der Webserver stempelt alles im Apache-Common-Log-Format — wer drei Quellen zusammenführt, schreibt also erneut denselben Parsing-Code. Ein Aufruf ersetzt einen Stapel formatspezifischer Regexe und Zeitzonenrechnung.

Drei Formate, eine normierte Antwort

Jede Logquelle hat vor Jahrzehnten ihre eigene Konvention gewählt und ist nie davon abgerückt. ISO-8601-Stempel wie 2026-07-25T14:30:00.123Z sind eindeutig, aber nur eines der Formate, denen Sie in der Praxis begegnen. Syslog-Zeilen nach RFC 3164 beginnen mit einem Stempel wie Jul 25 14:30:00 — ohne Jahr, ohne Zeitzone, mit zwei Leerzeichen bei einstelligem Tag.

Apache- und nginx-Zugriffslogs im Common-Log-Format nutzen eine völlig eigene Form: 25/Jul/2026:14:30:00 +0200, mit Schrägstrichen, Doppelpunkten und numerischer Zone. Der Log-Zeitstempel-Parser akzeptiert den führenden Zeitstempel einer Zeile in jedem der drei Formate und antwortet mit einer einzigen normierten ISO-8601-UTC-Zeichenkette, den Epoch-Millisekunden und dem Namen des erkannten Formats. Sie müssen nicht mehr nach Quelltyp verzweigen: Was auch immer ankommt, ein Feld sagt Ihnen, wann es geschah.

Alles, was nicht mit einem bekannten Zeitstempel beginnt, wird mit einem klaren Fehler abgewiesen statt mit einem geratenen Datum — eine fehlerhafte Zeile fällt also laut im Vorfeld auf, statt später still Ihre Analysen zu verfälschen.

Was Normierung konkret bedeutet

In der Normierung verstecken sich die subtilen Fehler, deshalb sind die Regeln hier klar benannt. Eine ISO-8601-Eingabe mit explizitem Offset, etwa 2026-07-25T16:30:00+02:00, wird nach UTC umgerechnet und als 2026-07-25T14:30:00.000Z zurückgegeben — derselbe Zeitpunkt, eine kanonische Schreibweise. Ein ISO-Stempel ohne jede Zone wird als UTC angenommen, die am wenigsten überraschende Vorgabe für Serverlogs.

Apaches verpflichtende numerische Zone wird exakt berücksichtigt. Sekundenbruchteile bleiben mit Millisekundenpräzision erhalten. Die Kalenderprüfung ist streng: der 30.

Februar, eine 25. Stunde oder eine 61. Sekunde sind Fehler, keine stillen Überläufe in den nächsten Tag — denn eine Log-Pipeline, die unmögliche Daten akzeptiert, wird Sie bei einem Vorfall früher oder später in die Irre führen.

Für Pipelines gebaut, deterministisch by Design

Der Parser ist eine reine Funktion: reguläre Ausdrücke erkennen das Format, danach rechnet ganzzahlige Kalenderarithmetik zwischen Kalenderdaten und der Epoch um. Er liest niemals die Systemuhr, ruft niemals das Netzwerk an und hängt niemals von der Zeitzone der Maschine ab, auf der er läuft — dieselbe Eingabe erzeugt also dieselbe Ausgabe, heute in Ihren Tests und in einem Jahr in der Produktion. Diese Deterministik zählt, wenn Sie archivierte Logs durch eine neue Pipeline erneut abspielen und erwarten, dass die rekonstruierte Zeitleiste Byte für Byte mit dem Original übereinstimmt.

Typische Anwendungen sind das Normieren von Archiven mit Mischformaten vor dem Laden in eine Suchmaschine, das Ausrichten von Ereignissen aus Anwendungs-, System- und Webserver-Logs auf einer gemeinsamen UTC-Zeitleiste bei der Vorfallanalyse sowie die Prüfung, ob ein Shipper Zeilen in dem Format stempelt, das Ihr Collector erwartet.

Logs aus verschiedenen Quellen zusammenführen

Normieren Sie ISO-, Syslog- und Apache-Stempel auf eine UTC-Zeitleiste, bevor Sie gemischte Archive in Ihren Log-Store laden.

Eine Vorfall-Zeitleiste rekonstruieren

Ordnen Sie Anwendungs-, System- und Webserver-Ereignisse chronologisch, wenn jede Ebene ihre Zeilen anders gestempelt hat.

Das Format eines Log-Shippers prüfen

Stellen Sie sicher, dass die Zeilen Ihrer Agents tatsächlich mit dem Zeitstempelformat beginnen, das Ihr Collector erwartet, und weisen Sie fehlerhafte Zeilen früh ab.

Was kostet das?

Derselbe Parser läuft auf dieser Seite außerdem kostenlos in Ihrem Browser.

Welche Zeitstempelformate werden unterstützt?

ISO 8601 (mit oder ohne Sekundenbruchteile und Zeitzonen-Offset), Syslog nach RFC 3164 wie 'Jul 25 14:30:00' sowie das Apache-Common-Log-Format wie '25/Jul/2026:14:30:00 +0200'.

Was gilt, wenn ein Zeitstempel keine Zeitzone hat?

Er wird als UTC angenommen. Stempel mit explizitem Offset werden nach UTC umgerechnet, sodass jede Antwort in derselben normierten Form zurückkommt.

Was, wenn die Zeile nicht mit einem bekannten Zeitstempel beginnt?

Unmögliche Daten wie der 30. Februar oder Stunde 25 werden ebenso abgewiesen.

Werden meine Logdaten gespeichert?

Nein. Die Zeile wird im Arbeitsspeicher geparst und verworfen; zurückgegeben wird nur der normierte Zeitstempel.

Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.

POSThttps://api.kit.forhosting.com/dev/timestamp-log-parse

Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.

curl -X POST https://api.kit.forhosting.com/dev/timestamp-log-parse \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"2026-07-25T14:30:00.123Z INFO worker started"}'
{
  "text": "2026-07-25T14:30:00.123Z INFO worker started"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev.timestamp_log_parse",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.

pro Anfrage$0.002

Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.

max_chars10000
HTTPCodeBedeutung
401unauthorizedDer API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer).
402insufficient_balanceIhr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht.
404unknown_typeUnbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog.
429rate_limitedZu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt.

Diese API nimmt eine Logzeile entgegen, liest den Zeitstempel am Zeilenanfang in einem der drei Formate und liefert ihn normiert als ISO 8601 UTC zurück, zusammen mit den Epoch-Millisekunden und dem erkannten Format.

Was Normierung konkret bedeutet

Das fehlende Jahr bei Syslog ist die einzige Stelle, an der eine Annahme unvermeidbar ist: RFC 3164 überträgt schlicht keines, daher ergänzt der Parser es aus dem Parameter default_year (2000, sofern Sie kein anderes übergeben) und kennzeichnet das Ergebnis mit year_assumed: true, damit die Ausgabe die Annahme selbst offenlegt.

Für Pipelines gebaut, deterministisch by Design

Derselbe Code läuft auf dieser Seite kostenlos in Ihrem Browser — Zeile einfügen, Ergebnis sehen — und kostet $0.002 pro Anfrage, wenn Sie ihn über die API automatisieren; nach der Antwort bleibt keine Datei und keine Zeile gespeichert.

Was passiert mit Syslog-Zeilen ohne Jahr?

Das Jahr wird aus dem Parameter default_year ergänzt (2000, sofern Sie kein eigenes übergeben), und das Ergebnis wird mit year_assumed: true markiert, damit die Annahme in der Ausgabe sichtbar ist.

Vollständige KIT-Dokumentation lesen →