SpringBoot中关闭Mybatis以及RocketMQ日志打印

SpringBoot工程集成了Mybatis和RocketMQ,也集成了Log4j,项目中自己的日志都可以通过log4j来管理,日志打印通过通过日志级别可以管理,一直很正常。 

后来项目上线正常稳定运行一段时间后,要求只打印ERROR级别日志,其他级别日志都不打印。 这不是小意思吗? 直接修改log4j2.xml配置文件中的日志级别为ERROR,重启应用。

发现工程内自己写的日志已经不在打印除了ERROR级别之外的日志了,但是Mybatis的日志还是正常打印,而且是DEBUG级别,而且RocketMq也会打印WARN告警日志。

这就很奇怪了,然后尝试在lo4j2.xml中添加如下配置:









发现根本不管用。 后来查了一些博客,有些让改代码的,有些让加新的日志配置文件的,尝试了都不行。 最后尝试在application.properties中添加如下两行配置,问题解决。

#自己项目中对应dao层的包路径
logging.level.com.xxx.dao=error
#RocketmqClient是RocketMq中日志打印的标识
logging.level.RocketmqClient=error

加上之后,重启应用,问题解决。 

后记问题:

1、为什么会这样?

2、为什么同样的springboot+mybatis工程默认也不打印debug的sql日志?

3、为什么log4j2.xml控制不住mybatis和rocketMQ的日志打印?

你可能感兴趣的:(后端,mybatis,spring,boot)