gpt4 book ai didi

java - 如何检查日志条目是否是使用给定的 ConversionPattern 写入的?

转载 作者:太空宇宙 更新时间:2023-11-04 14:09:40 24 4
gpt4 key购买 nike

我有很多日志文件,并且有一些 log4j 配置(用于文件附加程序的不同 ConversionPattern 格式)。

我想编写一个脚本/测试,它能够通过用于写入文件的ConversionPattern对日志文件进行分组。我缺少的是如何实现类似的东西:

boolean logToPatternMatcher.matches(String conversionPattern, String logFileEntry)

Log4j API 可以吗?

对于给定的情况,上述方法应返回 true:

字符串 conversionPattern = "%d{ISO8601} %-5p [%-16.16t][%c] %m%n"

String logFileEntry = "2015-02-12 00:02:38,023 警告 [pool-58-thread-1][some.package.name.ConvertingPublisher] 文档 [类型:app.MessageProcessed,id:1063_1_20150128072222800] 重复。"

最佳答案

GROK 非常适合您的用例。我最近一直在将它与logstash一起使用,但是github上有一个java-grok项目你可以尝试。我发现这个链接来自 another stackoverflow answer .

GROK 本质上是一个正则表达式引擎。它有一堆预定义的正则表达式,可以匹配最常见的日志记录条目,如时间戳、日志级别等。如果这对您不起作用,您是否考虑过使用直接正则表达式?

关于java - 如何检查日志条目是否是使用给定的 ConversionPattern 写入的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28482881/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com