Adakah yang tahu alat untuk mendeteksi dan melaporkan pola berulang dalam file log? [Tutup]

12

Saya perlu memonitor beberapa file log berisik besar (500m / hari) dari aplikasi Java (log4j). Saat ini saya secara manual melihat file-file itu, ambil "ERROR" dan seterusnya. Namun harus memungkinkan alat untuk menemukan pola yang berulang dalam file, menghitungnya dan menyediakan menelusuri rincian entri individu. Adakah yang tahu alat seperti itu? Teks atau UI berbasis Web akan menyenangkan.

David Tinker
sumber
1
Bagi saya pertanyaan ini benar-benar menjerit perl.
John Gardeniers
Hmm mulai terlihat seperti saya harus menulis skrip bash dengan banyak greps. Saya berharap ada sesuatu yang tahu pola secara otomatis.
David Tinker
Serius, inilah perl diciptakan untuk. Anda dapat menulis skrip belajar mandiri untuk pola-pola itu, meskipun itu jelas di luar jangkauan di sini.
John Gardeniers
stackoverflow.com/questions/2590251/… memiliki solusi yang disebut Chainsaw.
John aka hot2use
datadoghq.com/blog/log-patterns <- sangat merekomendasikan, tetapi meskipun tidak gila mahal itu tidak super murah juga.
neokyle

Jawaban:

3

Saya pernah mendengar tentang orang yang menerapkan filter Bayesian pada file log untuk melihat hal-hal menarik dibandingkan entri log rutin. Mereka menggunakan filter spam, di mana entri rutin yang tidak menarik dianggap "baik" sementara yang tidak biasa dianggap sebagai "spam" dan menggunakan pewarnaan yang dapat mereka ubah.

Kedengarannya seperti mesin belajar hal bagi saya, tapi sekali lagi saya belum melihatnya beraksi, hanya mendengar tentang bir.

adamo
sumber
Ini sepertinya masuk akal bagi saya, dan Anda bahkan bisa memiliki asumsi yang sangat kuat sebelumnya (dalam pengertian Bayesian) tentang kata-kata tertentu yang selalu muncul di log server.
DrewConway
Ya ini akan melakukan pekerjaan. Adakah yang tahu implementasi yang bisa saya latih?
David Tinker
Orang bisa mulai dengan CRM114 kurasa. Atau tunggu sampai Drew Conway menerbitkan Machine Learning for Hacker-nya . Saya masih berusaha menemukan referensi asli untuk apa yang saya usulkan.
adamo
Ya! Saya membacanya kembali pada tahun 2005 di utas anggota bijak ini . Penulis email menyebutkan spamprobe .
adamo
6

Splunk sangat menakjubkan untuk hal-hal semacam ini. Saya menggunakannya secara internal untuk mengumpulkan semua log dan melakukan pencarian cepat melalui antarmuka berbasis browser yang sangat baik.

Burhan Khalid
sumber
Sayangnya kita mungkin akan memerlukan versi yang tidak bebas dan ini sedikit mahal
David Tinker
3

syslog-ng memiliki fitur bernama patterndb. Anda dapat membuat pola dan mencocokkan entri log dengan mereka secara real time kemudian mengirim entri tersebut ke file log terpisah.

Batu
sumber
2

Saat melihat ke syslog-ng dan patterndb (+1 untuk jawaban itu, di atas), saya menjumpai alat berbasis web yang disebut ELSA: http://code.google.com/p/enterprise-log-search-and-archive/ . Ini F / OSS di perl, dengan antarmuka web, dan seharusnya sangat cepat.

Saya belum mencobanya, tapi begitu saya selesai memfilter menggunakan patterndb, saya akan mencoba ELSA.

EdwardTeach
sumber
1

Cobalah petit .
Saya tidak yakin apakah itu akan berfungsi dengan format log4j, tetapi Anda mungkin dapat menulis filter khusus untuk itu.
Petit tidak memiliki antarmuka web, ini menampilkan grafik di shell Anda (ASCII art ftw!).
Sangat berguna untuk segera melihat pesan yang berulang dan mencari tahu kapan itu terjadi atau mulai terjadi lebih sering.

pemalsu
sumber
0

Glogg adalah penjelajah log yang sangat bagus karena Anda memiliki kemungkinan untuk membuat basis filter pada string dan garis warna atau mengambil semua kemunculan ke string.

http://glogg.bonnefon.org/

Alexandre Roux
sumber
0

Splunk biasanya merupakan solusi yang bagus untuk ini. Tetapi Anda menyebutkan bahwa itu terlalu mahal untuk Anda. Jadi saya sarankan Anda untuk melihat Logstash atau GrayLog .

Raffael Luthiger
sumber
-1

Anda dapat mencoba SEQREL's LogXtender, yang secara otomatis mendeteksi pola dan mengagregasi log yang serupa. Cara melakukannya adalah dengan membuat ekspresi reguler dengan cepat dan menggunakan regex yang di-cache untuk mencocokkan log lainnya. Dengan deteksi taksonomi tambahan, granularitas dapat ditambahkan. Versi gratis dapat diunduh di https://try.logxtender.net .

Mihnea
sumber