log4j2日志配置不生效

问题描述

设置log4j2的配置文件,为什么不生效呢?

先上配置

Logger performanceLogger = LoggerFactory.getLogger("PERFORMANCE");
this.performanceLogger.debug("=====PERFORMANCE=====");
<Console name="console" target="SYSTEM_OUT">
    <!--控制台只输出level及以上级别的信息(onMatch),其他的直接拒绝(onMismatch)-->
    <ThresholdFilter level="trace" onMatch="ACCEPT" onMismatch="DENY"/>
    <!--这个都知道是输出日志的格式-->
    <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss z} %-4r [%t] %-5p %c{-1} - %msg%xEx%n"/>
</Console>
<asyncLogger name="PERFORMANCE" level="debug" additivity="false">
    <appender-ref ref="console"/>
</asyncLogger>

配置没毛病为什么不生效呢

打开断点发现这个logger对象竟然是logback的jar包下的配置,经查阅这是由于jar包冲突导致的。
在这里插入图片描述

解决方案

查看maven依赖

到项目的根目录,打开命令行窗口,执行:mvn dependency:tree > tree.log(前提安装了maven,如何安装自行百度)。
打开tree.log搜索logback,如图:
在这里插入图片描述

pom添加依赖过滤

在spring-boot-starter-data-redis中自动引入了logback的jar包。找到mvn依赖,使用exclusions添加过滤。
在这里插入图片描述
clear、重启项目

检验结果

再次打印。发现已经使用log4j2的配置
在这里插入图片描述
控制台打印
在这里插入图片描述
自此完美解决。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值