Parser plików logów

Surowe pliki logów to ściany znaczników czasu, poziomów i wiadomości w wolnym tekście. Wklej log dostępu Nginx, log błędów Apache, zrzut syslog lub plik kanału Laravel, a parser rozbije go na ustrukturyzowane wiersze, pozwoli filtrować według zakresu dat ISO, ważności (od DEBUG do EMERGENCY), IP klienta lub wyrażenia regularnego względem wiadomości oraz podświetli trafienia, abyś faktycznie zobaczył, co stało się w oknie incydentu.

Jak sparsować plik logu

  1. 1

    Wklej treść logu

    Wrzuć surowy tekst logu. Popularne formaty (combined, common, syslog, JSON-lines) są automatycznie wykrywane.

  2. 2

    Ustaw filtr daty

    Użyj znacznika czasu początku/końca, by przybliżyć okno incydentu.

  3. 3

    Filtruj według poziomu lub IP

    Zaznacz poziomy ważności, wpisz IP lub podaj wzorzec wyrażenia regularnego, by dopasować wiadomości.

  4. 4

    Odczytaj tabelę

    Każdy wiersz pokazuje znacznik czasu, poziom, źródło i wiadomość z podświetlonymi pasującymi fragmentami.

Formaty rozpoznawane przez parser

Format Przykład Źródło
Nginx combined 1.2.3.4 - - [18/Apr/2026:10:00:00 +0000] "GET / HTTP/1.1" 200 1234 logi dostępu webowego
Apache common Jak wyżej bez Referer i User-Agent klasyczne stosy LAMP
Syslog RFC 5424 <34>1 2026-04-18T10:00:00Z host app - ID47 - msg demony systemowe Linuksa
Laravel daily [2026-04-18 10:00:00] production.ERROR: message kanał logów Laravel
JSON lines {"ts":"...","level":"ERROR","msg":"..."} strukturalne loggery, Loki, ELK

Standardowe poziomy logów

Wymienione od najgłośniejszych do najcichszych. Większość aplikacji stosuje kolejność syslog / PSR-3:

  1. EMERGENCY, system bezużyteczny.
  2. ALERT, wymagane natychmiastowe działanie.
  3. CRITICAL, stan krytyczny, np. baza danych niedostępna.
  4. ERROR, błąd środowiska wykonawczego, który należy zbadać.
  5. WARNING, sytuacja wyjątkowa, ale nie błąd.
  6. NOTICE, zdarzenie normalne, ale istotne.
  7. INFO, ogólne komunikaty operacyjne.
  8. DEBUG, diagnostyka niskiego poziomu, hałaśliwa na produkcji.

Wskazówki dotyczące filtrowania

  • Najpierw zawęź według daty. Większość logów produkcyjnych jest ogromna; przycięcie do okna incydentu przyspiesza każdy inny filtr.
  • Użyj wyrażeń regularnych do wiadomości. Wyszukiwanie timeout|connection refused|5\d\d wyłapuje większość awarii sieci w jednym przebiegu.
  • Wyizoluj jedno IP. Badając podejrzanego klienta, odfiltruj wszystko inne i czytaj jego żądania chronologicznie.
  • Wyklucz roboty. Podciągi User-Agent takie jak bot, crawl, spider odfiltrowują większość szumu w analizach typu analitycznego.

Uwagi o wydajności

  • Parser działa po stronie klienta, więc linie pozostają na twojej maszynie. To także znaczy, że bardzo duże pliki (100 MB+) spowolnią przeglądarkę, najpierw podziel je przez split -l lub przepuść przez narzędzie po stronie serwera.

Najczęściej zadawane pytania

Nie. Parsowanie i filtrowanie odbywają się w twojej przeglądarce. Wklejony log nigdy nie opuszcza twojego urządzenia, co ma znaczenie dla plików mogących zawierać IP, tokeny lub dane osobowe.

Tak, linie zaczynające się od białego znaku lub at ... są dołączane do poprzedniego wpisu logu, więc pełny stos wyjątku pozostaje w jednym wierszu.

Użyj filtra wyrażeń regularnych względem kolumny wiadomości. W przypadku strukturalnych logów JSON wszystkie klucze są przeszukiwalne jako zwykły tekst w wiadomości.

Nie bezpośrednio, najpierw rozpakuj przez gunzip lub narzędzie plikowe i wklej surowy tekst. Parser oczekuje nieskompresowanych linii logów.

Nie ma twardego limitu, ale wszystko powyżej 10 MB może spowolnić filtrowanie. W przypadku dużych archiwów najpierw użyj grep na serwerze i wklej tu przefiltrowany wynik.

Powiązane narzędzia

Narzędzie jest dostępne w innych językach