Muszę monitorować niektóre duże, hałaśliwe pliki dziennika (500m / dzień) z aplikacji Java (log4j). W tej chwili ręcznie przeglądam pliki, grep dla „ERROR” i tak dalej. Jednak narzędzie powinno mieć możliwość wykrycia powtarzających się wzorców w pliku, policzenia ich i udostępnienia szczegółów poszczególnych wpisów. Czy ktoś wie o takim narzędziu? Przydałby się tekstowy lub internetowy interfejs użytkownika.
12
perl
.Odpowiedzi:
Słyszałem o ludziach stosujących filtrowanie bayesowskie do plików dziennika w celu wykrycia interesujących rzeczy w porównaniu z rutynowymi wpisami dziennika. Użyli filtrów antyspamowych, w których rutynowe nieciekawe wpisy były uważane za „dobre”, a te niezwykłe za „spam” i wykorzystując takie zabarwienie, przez które mogli się przełączać.
Brzmi dla mnie jak uczenie maszynowe, ale z drugiej strony nie widziałem tego w akcji, słyszałem tylko o piwie.
źródło
Splunk czyni cuda dla tego rodzaju rzeczy. Używam go wewnętrznie do zbierania wszystkich dzienników i szybkiego wyszukiwania za pomocą doskonałego interfejsu opartego na przeglądarce.
źródło
syslog-ng ma funkcję o nazwie patterndb. Możesz tworzyć wzorce i dopasowywać do nich wpisy dziennika w czasie rzeczywistym, a następnie wysyłać je do oddzielnych plików dziennika.
źródło
Przeglądając syslog-ng i patterndb (+1 do tej odpowiedzi powyżej), napotkałem narzędzie internetowe o nazwie ELSA: http://code.google.com/p/enterprise-log-search-and-archive/ . Jest to F / OSS w perlu, z interfejsem internetowym i powinien być naprawdę szybki.
Jeszcze tego nie próbowałem, ale kiedy skończę filtrowanie za pomocą patterndb, spróbuję ELSA.
źródło
Wypróbuj petit .
Nie jestem pewien, czy będzie działać z formatem log4j, ale możesz być w stanie napisać niestandardowy filtr do tego.
Petit nie ma interfejsu sieciowego, wyświetla wykresy w twojej powłoce (ASCII art ftw!).
Bardzo przydatne jest szybkie wyświetlanie powtarzających się wiadomości i ustalanie, kiedy się pojawiły lub zaczęły się zdarzać częściej.
źródło
Jeśli używasz debian / squeeze na swoim serwerze, spójrz na log2mail: http://packages.debian.org/squeeze/log2mail
źródło
Glogg jest bardzo dobrym eksploratorem dzienników, ponieważ możesz utworzyć bazę filtrów na łańcuchu i linii kolorów lub odzyskać wszystkie wystąpienia łańcucha.
źródło
Splunk jest zwykle dobrym rozwiązaniem. Ale wspomniałeś, że jest to dla ciebie za drogie. Więc polecam spojrzeć na Logstash lub GrayLog .
źródło
Możesz wypróbować LogXtender SEQREL, który automatycznie wykrywa wzorce i agreguje podobne dzienniki. Sposób polega na tworzeniu wyrażeń regularnych w locie i używaniu wyrażenia regularnego w pamięci podręcznej w celu dopasowania do innych dzienników. Dzięki dodatkowemu wykrywaniu taksonomii można dodać większą szczegółowość. Bezpłatną wersję można pobrać pod https://try.logxtender.net .
źródło