如何使用自定义logback模式配置分析日志文件

时间:2018-02-08 19:47:21

标签: logging log4j logback log-analysis logalyze

我想通过一组日志文件进行分析(注意错误并创建报告)

这些日志文件具有自定义回溯模式

中的记录
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <layout class="ch.qos.logback.classic.PatternLayout">
        <Pattern>%d{"yyyy-MM-dd'T'HH:mm:ss,SSSXXX", UTC} [%thread] %-5level %logger{36} - %msg%n</Pattern>
    </layout>
</appender>

和示例日志条目

2018-02-05 07:59:49,140 22425254620 [http-11.11.11.11:8000-7] ERROR com.sample - Error in processing

我使用的是Windows机器..我查看了logalyze和apache-chainsaw但无法正确解析日志文件(错误记录未正确显示) 我在使用上述内容时做错了吗?

是否有任何方式/开源工具可以查看整个日志文件集并获取错误记录?

1 个答案:

答案 0 :(得分:0)

您的配置文件中的模式似乎与示例日志条目不匹配:日期格式

yyyy-MM-dd'T'HH:mm:ss,SSSXXX

应该产生类似

的输出

2018-02-10T14:37:48,187Z

请注意您在此处粘贴的样本日志条目的差异:时间和日期之间的“T”字符,以及结束“,187Z”表示187 ms Z ulu time({{1 }}表示时区,我刚用Logback 1.2.3测试了这个模式。但是你说你的样本日志条目看起来更像是

XXX

所以也许你在这个页面粘贴了你用于STDOUT的模式,但是你正在使用另一个用于你的日志文件?

无论如何,要分析您的日志文件,我建议使用LogMX。使用免费版本,转到“文件”&gt; “配置Log Parsers ...”,单击右侧的“+”绿色按钮创建Parser,然后单击“Log4j / Logback pattern”选项卡,然后粘贴其中一个模式:(不确定一个你现在正在使用 - 确保从我的答案中复制/粘贴,空白很重要)

  • 对于2018-02-05 07:59:49,140 22425254620等日志,请使用:

2018-02-05T07:59:49,140Z [http-11.11.11.11:8000-7]

  • 对于%d{"yyyy-MM-dd'T'HH:mm:ss,SSSXXX",UTC} [%thread] %-5level %logger{36} - %msg%n等日志,请使用:

2018-02-05 07:59:49,140 22425254620 [http-11.11.11.11:8000-7]

您说您有多个日志文件:LogMX可以打开多个日志文件并在单个合并视图中显示其内容:

  • 如果所有文件都在同一目录(本地或远程),只需转到“文件”&gt; “打开日志...”,然后检查底部的“合并”选项卡

  • 如果所有文件都不在同一目录中,请转到“文件”&gt; “在合并视图中打开多个日志”,然后单击右侧的“+”绿色按钮,查看要包含的每个文件

  • 如果所有文件都已加载到LogMX中,您可以使用“工具”&gt; “合并日志......”

为了在这些文件中仅显示ERROR,加载后,只需使用LogMX窗口左下角的滑块选择ERROR(红色结束)