LogAnalyzer

LogAnalyzer jest aplikacją wspomagającą analizowanie plików z logami. Powstał on w wyniku bezpośredniej potrzeby: pisałem wówczas aplikację dla Androida, w przypadku której jedynym sposobem na wykrywanie błędów napotkanych przez jej użytkowników była właśnie analiza logów.

Możliwości

LogAnalyzer umie przetwarzać stosunkowo duże pliki (testowałem na sumarycznej liczbie 1000000 linii) pochodzące z pojedynczego pliku, serii plików lub ze schowka. W przypadku otwierania serii plików – o ile z wpisów da się wyodrębnić datę i czas – LogAnalyzer automatycznie je posortuje.

Podczas otwierania logu możemy zdefiniować parser, który wyodrębni z każdego wpisu poszczególne informacje. Jeżeli natomiast wpisy nie mają określonej struktury, LogAnalyzer może po prostu wczytać każdy wiersz jako pojedynczy komunikat.

Parser

Parser podzielony jest na trzy główne obszary. W pierwszym definiujemy wyrażenie regularne zawierające grupy, które powinny odzwierciedlać konkretne informacje zawarte w logu. W drugiej sekcji konfigurujemy każdą z grup, definiując, czy jest to data i czas, rozległość (priorytet) wpisu, komunikat, czy też inna informacja. Wreszcie w trzecim obszarze możemy wkleić fragment logu (domyślnie LogAnalyzer wklei tam bieżącą zawartość schowka), by sprawdzić, czy parser jest prawidłowo skonfigurowany.

Po wskazaniu źródła LogAnalyzer podpowie też (poprzez wyświetlenie zielonego symbolu), które parsery są w stanie prawidłowo przetworzyć logi w nim zawarte. Jest to przydatne szczególnie wówczas, gdy często analizujemy logi pochodzące z różnych źródeł.

Wyświetlanie

Po wybraniu źródła i parsera, log jest wyświetlany w głównym oknie aplikacji.

Kolorowanie

Aby uprościć analizowanie logów, LogAnalyzer może pokolorować je według określonych reguł. Reguły takie można wprowadzić dla każdego rozpoznanego pola.

Filtrowanie

W analogiczny sposób możemy przefiltrować wpisy, definiując określone reguły.

Skrypty

W przypadku, gdy zaistnieje taka potrzeba, można również napisać skrypt w Pythonie, który w dowolny sposób przeanalizuje pobrane z pliku logi. LogAnalyzer pozwala na przechowanie biblioteki skryptów i wywołanie ich w dowolnym momencie.

Dodatkowe funkcje

Pozostałe funkcje obejmują profilowanie logów (wyznaczanie konkretnych logów i mierzenie czasu, który upłynął pomiędzy nimi), dodawanie adnotacji oraz eksportowanie zaznaczonego fragmentu logów do HTMLa (by na przykład móc przesłać je potem przy pomocy poczty elektronicznej). Warto dodać, że zarówno reguły kolorowania jak i filtrowania można zapisać w profilach, które można wybrać już w oknie otwierania logu. Znacząco przyspiesza to analizę logów.

Licencja

LogAnalyzer jest programem darmowym, o otwartych źródłach. Jeżeli chcesz obejrzeć jego kod, znajdziesz go na GitLabie. Jeżeli natomiast chcesz go przetestować, odpowiedni link do ściągnięcia znajdziesz w dziale Download tego serwisu.

Co myślisz?

Czy podoba Ci się LogAnalyzer? Daj znać w komentarzach.