我有几个日志文件[通过log4j生成]。我知道我们可以使用Chainsaw来读取这些日志[虽然我们也可以在记事本中读取这些日志]。
但我无法弄清楚如何打开存储的日志文件来查看其内容。所以简单的问题是Is it possible to read the log file using Chainsaw?
答案 0 :(得分:2)
我在Windows上使用Chainsaw v2 Log Viewer。
在文件菜单中有一个选项'Load Log4j file',它允许您打开Log4j XML日志文件。
当然,您尝试打开的文件必须确认log4j XML架构。
答案 1 :(得分:2)
是 - 只要每个日志条目以“消息”结尾并且以换行符分隔,您就应该能够使用LogFilePatternReceiver解析日志文件。
示例日志行:
20100128 11:35:34.546 [main] INFO - package1.package2.SomeLoggerName - 此处的消息为line1 消息在这里第2行
这两行代表一个日志条目,可以使用此logFormat进行解析:
TIMESTAMP [THREAD] LEVEL - LOGGER - MESSAGE
有关详细信息,请参阅LogFilePatternReceiver JavaDoc(可从Chainsaw的帮助菜单中获得)和示例接收器配置(可从“欢迎”选项卡中获取,“查看示例接收器配置”按钮)。
答案 2 :(得分:1)
是的,Chainsaw可以读取常规文本日志文件 - 使用LogFilePatternReceiver。请参阅“欢迎”选项卡中提供的示例配置。
答案 3 :(得分:1)
您的日志文件包含'priority'和'category'属性,而不是'level','logger',默认情况下Chainsaw支持这些属性。
您可以更改布局以生成级别&类别属性?如果是这样,Chainsaw应该能够处理您的日志文件。
如果您需要使用类别&优先级属性名称,我建议下拉log4j的XmlDecoder源并修改它以接受优先级&类别属性名称。然后,您可以将Chainsaw配置为使用LogFileXMLReceiver并指定您自己的Decoder实现。
Chainsaw的Welcome选项卡提供了一个示例接收器配置。
这是XMLDecoder的源代码: http://svn.apache.org/viewvc/logging/log4j/companions/receivers/trunk/src/main/java/org/apache/log4j/xml/XMLDecoder.java?view=log
LogFileXMLReceiver的JavaDoc应该可以从Chainsaw的帮助菜单中找到。