2010-04-07 90 views
51

我正在寻找某种分析工具来生成由log4j文件生成的日志文件。我正在寻找比grep更高级的东西?你用什么来进行日志文件分析?是否有log4j文件的日志文件分析器?

我找了以下几种特点:

  • 的工具应该告诉我有多少时间给定日志语句或堆栈跟踪已经发生,最好用一些种模式支持(如数字与'User [az] *登录'相匹配的日志语句)。
  • 通过日志级别(多少条INFO,DEBUG行)和启动日志消息的类进行细分会很好。
  • 按日期细分(给定时间段内有多少条日志语句)
  • 什么样的日志行常常在一起出现?
  • 支持多个文件,因为我使用的日志滚动
  • 热点分析:发现是否有一定的时间周期时,有非常大量的日志报表的
  • 无论是命令行或GUI的罚款
  • 开源是首选,但我也有兴趣在商业产品

我log4j的配置使用org.apache.log4j.PatternLayout与模式%d %p %c - %m%n但可以适用于分析工具。

+0

可能的重复http://stackoverflow.com/questions/144807/java-log-viewer – Vadzim 2013-01-23 18:44:24

回答

13

(免责声明:我的贡献电锯V2的开发者之一)

Chainsaw V2可以提供一些你通过其自定义表达式,并利用这些表达式上色的能力支持需要的功能, ,搜索和过滤事件。

您可以将多个日志文件加载到Chainsaw(默认情况下,日志文件的所有事件都放置在特定于日志文件的选项卡上)。您还可以定义一个'自定义表达式logpanel',将所有选项卡中的事件聚合到与您提供的表达式匹配的新选项卡中 - 类似于数据库'视图',您可以使用表达式'LEVEL> = WARN'来收集所有警告,错误&致命消息从任何日志文件转换为单个视图。

其可用于上色,搜索或过滤事件的一些示例表达式:

  • 味精等 '用户[A-Z] *登录'
  • MSG〜=登录||味精〜=注销
  • 水平>信息
  • 存在例外
  • 时间戳< = '2010/04/06 15时05分35秒'

只有这样,才能得到 '计数' 目前是在“细化焦点”字段中定义一个表达式(匹配表达式的事件的计数将显示在状态栏中)。

添加到即将发布的版本中的一个有用功能是表格右侧的可点击条(类似于Eclipse或Idea的条显示语法错误指示),它将显示整个日志文件的颜色规则和搜索表达式匹配。

当下一个版本的Chainsaw V2出来时,我希望你给它一个旋转 - 它是开源的,免费的,我们一直对建议&反馈感兴趣。

+1

没有XMLLayout的电锯工作吗?与正常PatternLayout? – 2010-04-08 09:10:41

+0

是的,使用LogFilePatternReceiver。您可以从Chainsaw的帮助菜单中找到javadoc,并在“欢迎”选项卡上查看示例配置文件(视图示例接收器配置按钮)。 的“LOGFORMAT”您模式是: TIMESTAMP LEVEL记录仪 - 消息 您还可以使用VFSLogFilePatternReceiver,使您可以访问到的Jakarta Commons-VFS文件系统(通过ssh尾文件等)。我建议使用VFS接收器(拖尾更可靠) - 只需将必要的jar(vfs,jsch,commons logging等)添加到$ user/.chainsaw/plugins文件夹或类路径中即可。 – Scott 2010-04-08 15:58:14

+0

昨晚我将搜索匹配计数添加到状态栏,所以您可能会发现有用的(您现在可以通过过滤和搜索,在状态栏中获得计数)。 – Scott 2010-04-08 16:01:05

9

我建议Splunk。它提供了快速,类似谷歌的搜索跨越很多(兆兆字节)的日志,很容易过滤(例如通过日志级别或日期),可以很容易地关联到多个相关日志事件的交易等。

有一个只要您每天索引少于500MB的日志,即可免费下载。

+0

看起来很有希望。任何关于定价的想法? – 2010-04-07 06:38:13

+4

有一个免费版本可以处理每天500MB的日志索引。如果您的日志记录超过500MB /天,Splunk并不便宜(数千美元),但是大多数用户每天记录大量数据的方式通常都是运行一个庞大而昂贵的站点,因此成本可能不是问题。 – 2010-04-07 15:41:17

1

心树洞察也是一个有用的开源日志分析工具

http://sourceforge.net/projects/mindtreeinsight

+1

下载时请小心。 Sophos刚刚报告它是病毒/恶意软件。不知道它是否正确,但我立即将其删除,只是为了安全... – Bhaskar 2017-02-17 07:31:46

2

你可以试试LogSaw,这是一个开放源代码Ë基于Eclipse软件和活跃现在...

1

我已经创建了一个自定义工具:https://plus.google.com/u/0/102275357970232913798/posts/Fsu6qftH2ja

阿尔法是而分析日志文件的GUI工具。通常你不得不使用编辑器在它们中搜索数据。您打开一个日志,一次又一次按下Ctrl-F和“下一步”按钮,然后重新加载修改后的文件,然后重复搜索。 Alfa将日志文件映射到数据库,允许您使用标准SQL查询来获取数据,而无需任何多余的操作。

2

也许来得有些晚,但LogMX做这一切的东西,是多年来高度活跃。它不是开源的,但即使它看起来不是很强大!