有人知道一种工具来检测和报告日志文件中的重复模式吗?[关闭]


12

我需要从Java应用程序(log4j)监视一些大噪音日志文件(每天500m)。现在,我手动查看文件,grep表示“ ERROR”,依此类推。但是,工具应该有可能发现文件中的重复模式,对它们进行计数并提供对各个条目详细信息的深入分析。有人知道这样的工具吗?基于文本或Web的UI会很好。


1
对我来说,这个问题绝对令人震惊perl
John Gardeniers

嗯,它开始看起来像我将不得不写很多bash的bash脚本。我希望能自动找出模式。
大卫·廷克

认真地讲,这正是为perl创建的。您可以为这些模式编写自学习脚本,尽管显然这超出了范围。
John Gardeniers

stackoverflow.com/questions/2590251/…有一个称为电锯的解决方案。
约翰aka hot2use

datadoghq.com/blog/log-patterns <-强烈推荐,但虽然价格不菲,但也不便宜。
neokyle

Answers:


3

我听说有人在日志文件上应用贝叶斯过滤以发现有趣的内容而不是常规的日志条目。他们使用了垃圾邮件过滤器,常规的无趣条目被认为是“垃圾邮件”,而不寻常的条目被认为是“垃圾邮件”,并使用这种颜色可以转移。

在我看来,这听起来很像机器学习的东西,但是我再也没有看到它的实际应用,只是通过啤酒听到了它。


对我来说,这似乎是完全合理的,而且您甚至可以对总是出现在服务器日志中的某些单词有非常强的先前假设(就贝叶斯而言)。
2011年

是的,这可以完成工作。有人知道我可以培训的实现吗?
大卫·廷克

我猜可以从CRM114开始。或者等到Drew Conway发布他的《黑客机器学习》。我仍在努力寻找对我提出的建议的原始参考。
adamo

是的 我在2005年通过Sage-members线程阅读它。电子邮件的作者提到spamprobe
adamo


3

syslog-ng具有一个名为patterndb的功能。您可以制作模式并将日志条目与它们实时匹配,然后将这些条目发送到单独的日志文件中。



1

试试
我不确定它是否可以使用log4j格式,但是您可以为此编写一个自定义过滤器。
Petit没有Web界面,它在您的Shell中显示图形(ASCII艺术字ftw!)。
快速查看重复的消息并弄清它们何时发生或开始更频繁发生,这非常有用。


0

如果您在服务器上使用debian / squeeze,请查看log2mail:http ://packages.debian.org/squeeze/log2mail




-1

您可以尝试SEQREL的LogXtender,它可以自动检测模式并汇总相似的日志。做到这一点的方法是动态创建正则表达式,并使用缓存的正则表达式匹配其他日志。通过其他分类检测,可以添加更多的粒度。可以从https://try.logxtender.net下载免费版本。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.