将 Zookeeper 从 3.6.3 升级到 3.9.1 后,log4j 属性不适用

问题描述 投票:0回答:1

在我的 Java 项目中,我的资源下有 log4j2.xml 文件,它定义了

camel, kafka, zookeeper, springframework
的每个服务的日志格式和日志级别。
我在每个日志之前设置了一个时间戳,并为上述所有服务设置了
level="ERROR"

我有 apache Zookeeper 版本 3.6.3 作为 kafka 的一部分,而不是我的 pom.xml 中的直接依赖项。
由于此版本中发现漏洞,我决定通过向我的 pom.xml 添加新的 Zookeeper 依赖项来将此版本升级到 3.9.1。
在升级zookeeper之前,当我运行
docker logs [myservice]
时,这将是日志之一:
[30/01/24 10:14:15:015 UTC] [qtp2593515078-66]  INFO BusinessLogic: createReport - Started

升级后,这是一个日志示例:
[pool-3-thread-1] INFO org.apache.camel.impl.engine.DefaultShutdownStrategy - Graceful shutdown of 1 routes completed in 0 seconds

有两件事发生了变化,一是日志不再符合格式(每个日志之前没有时间戳),并且日志级别似乎从服务的错误更改为信息,这意味着 log4j2.xml 属性不可用不再申请了。
我尝试做的事情:

  1. 将zookeeper版本更改为3.7.2、3.8.3
  2. 不包括
    ch.qos.logback
    io.netty:netty-tcnative-boringssl-static
java apache-zookeeper
1个回答
0
投票

zookeeper 可能用自己的日志记录 slf4j 覆盖了 log4j,尝试排除它以查看它是否有效。

© www.soinside.com 2019 - 2024. All rights reserved.