Quelqu'un connaît-il un outil pour détecter et signaler les motifs répétitifs dans un fichier journal? [fermé]


12

J'ai besoin de surveiller de gros fichiers journaux bruyants (500 m / jour) à partir d'une application Java (log4j). En ce moment, je regarde manuellement les fichiers, grep pour "ERREUR" et ainsi de suite. Cependant, il devrait être possible pour un outil de repérer des motifs répétitifs dans le fichier, de les compter et de fournir une analyse détaillée des détails des entrées individuelles. Quelqu'un connaît un tel outil? Une interface texte ou basée sur le Web serait bien.


1
Pour moi, cette question crie absolument perl.
John Gardeniers

Hmm c'est comme si je devais écrire un script bash avec beaucoup de greps. J'espérais avoir quelque chose pour comprendre les motifs automatiquement.
David Tinker

Sérieusement, c'est exactement pour cela que Perl a été créé. Vous pouvez écrire un script d'auto-apprentissage pour ces modèles, bien que cela soit évidemment hors de portée ici.
John Gardeniers


datadoghq.com/blog/log-patterns <- je le recommande vivement, mais bien qu'il ne soit pas fou, ce n'est pas super bon marché non plus.
neokyle

Réponses:


3

J'ai entendu parler de personnes appliquant le filtrage bayésien sur les fichiers journaux pour repérer des choses intéressantes par rapport aux entrées de journal de routine. Ils ont utilisé des filtres anti-spam, où les entrées inintéressantes de routine étaient considérées comme "bonnes" tandis que celles inhabituelles étaient considérées comme "spam" et en utilisant cette coloration, elles pouvaient passer.

Cela ressemble beaucoup à des choses d'apprentissage automatique pour moi, mais encore une fois, je ne les ai pas vues en action, j'en ai seulement entendu parler au cours des bières.


Cela me semble parfaitement raisonnable, et vous pourriez même avoir des hypothèses antérieures très solides (au sens bayésien) sur certains mots qui apparaissent toujours dans les journaux du serveur.
DrewConway

Oui, cela ferait l'affaire. Quelqu'un connaît une implémentation que je pourrais former?
David Tinker

On pourrait commencer avec CRM114, je suppose. Ou attendez que Drew Conway publie son Machine Learning for Hackers . Je travaille toujours pour trouver la référence originale à ce que j'ai proposé.
adamo

Oui! Je l'ai relu en 2005 dans ce fil des membres sages . L'auteur de l'e-mail mentionne spamprobe .
adamo

6

Splunk fait des merveilles pour ce genre de choses. Je l'utilise en interne pour rassembler tous les journaux et faire des recherches rapides via son excellente interface basée sur un navigateur.


Malheureusement, nous aurions probablement besoin de la version non gratuite et c'est un peu cher
David Tinker

3

syslog-ng a une fonction nommée patterndb. Vous pouvez créer des modèles et leur faire correspondre des entrées de journal en temps réel, puis envoyer ces entrées à des fichiers journaux distincts.



1

Essayez petit .
Je ne sais pas si cela fonctionnera avec le format log4j, mais vous pourrez peut-être écrire un filtre personnalisé pour cela.
Petit n'a pas d'interface web, il affiche des graphiques dans votre shell (ftw art ASCII!).
Il est très utile de voir rapidement les messages répétés et de déterminer quand ils se sont produits ou ont commencé à se produire plus fréquemment.



0

Glogg est un très bon explorateur de journaux car vous avez la possibilité de créer un filtre de base sur une chaîne et une ligne de couleur ou de récupérer toutes les occurrences dans une chaîne.

http://glogg.bonnefon.org/


0

Splunk est généralement une bonne solution pour cela. Mais vous avez dit que c'était trop cher pour vous. Je vous recommande donc de regarder Logstash ou GrayLog .


-1

Vous pouvez essayer LogXtender de SEQREL, qui détecte automatiquement les modèles et agrège les journaux similaires. Pour ce faire, créez des expressions régulières à la volée et utilisez l'expression régulière mise en cache pour faire correspondre d'autres journaux. Avec une détection de taxonomie supplémentaire, plus de granularité peut être ajoutée. Une version gratuite peut être téléchargée sous https://try.logxtender.net .

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.