背景
将 -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。
log4j-to-slf4j
org.apache.loggi服务器托管网ng.log4j
验证
运行代码没问题,配置的日志文件也有内容了。
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
相关推荐: centos系统下,docker安装sqlserver并用本地Navicat连接
文章目录 一,centos下安装docker 二,docker安装sqlserver2019 2.1 安装遇到的问题 2.1.1 修改用户名进不去数据库 2.1.2 安装2022版的sqlserver发现启动失败 三,Navicat连接centos下的sqls…