主页 > 人工智能  > 

Log4j2.xml不生效:WARNStatusLoggerMultipleloggingimplementat

Log4j2.xml不生效:WARNStatusLoggerMultipleloggingimplementat
背景

将 -Dlog4j.debug 添加到IDEA的类的启动配置中 运行上图代码,这里log4j2.xml控制的日志级别是info,很明显是没生效。

DEBUG StatusLogger org.slf4j.helpers.Log4jLoggerFactory is not on classpath. Good! DEBUG StatusLogger Using ShutdownCallbackRegistry class org.apache.logging.log4j.core.util.DefaultShutdownCallbackRegistry WARN StatusLogger Multiple logging implementations found: Factory: org.apache.logging.log4j.core.impl.Log4jContextFactory, Weighting: 10 Factory: org.apache.logging.slf4j.SLF4JLoggerContextFactory, Weighting: 15 Using factory: org.apache.logging.slf4j.SLF4JLoggerContextFactory 分析

警告信息显示检测到多个日志实现,权重分别为10和15。 最终选择了权重较高的org.apache.logging.slf4j.SLF4JLoggerContextFactory 作为日志的实现工厂。 现在需要让应用程序使用 Log4jContextFactory 而不是 SLF4JLoggerContextFactory 作为日志的实现工厂。因此需要检查依赖关系,移除冲突的依赖项(这里需要处理的依赖项是log4j-to-slf4j)。

处理

这里需要处理的是spring-boot-starter-web依赖中的log4j-to-slf4j。

<exclusions> <exclusion> <artifactId>log4j-to-slf4j</artifactId> <groupId>org.apache.logging.log4j</groupId> </exclusion> </exclusions> 验证

运行代码没问题,配置的日志文件也有内容了。

标签:

Log4j2.xml不生效:WARNStatusLoggerMultipleloggingimplementat由讯客互联人工智能栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“Log4j2.xml不生效:WARNStatusLoggerMultipleloggingimplementat