springboot mybatisplus 配置SQL日志,但是没有日志输出
原因是我这边已经有了logback-boot.xml 日志配置
mybatis-plus:configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImpllogging:config: classpath:logback-boot.xml# 下面加的配置level: org.mybatis: DEBUGcom.baomidou.mybatisplus: DEBUG
我直接在yaml上加的配置被覆盖没有生效,需要在xml上配置
<root level="info"><!--自己的配置--></root><logger name="org.mybatis" level="DEBUG"/><logger name="com.baomidou.mybatisplus" level="DEBUG"/>
源码核心逻辑主要在这个地方
org.springframework.boot.logging.AbstractLoggingSystem#initialize
@Overridepublic void initialize(LoggingInitializationContext initializationContext, String configLocation, LogFile logFile) {// 配置文件路径不为空if (StringUtils.hasLength(configLocation)) {// 根据配置文件初始化配置initializeWithSpecificConfig(initializationContext, configLocation, logFile);return;}// 里面首先根据默认logback标准化配置路径下是否有这些文件进行初始化// "logback-test.groovy", "logback-test.xml", "logback.groovy", "logback.xml" // 这个方法比较详情说明配置加载情况,有需要自己看看initializeWithConventions(initializationContext, logFile);}private void initializeWithConventions(LoggingInitializationContext initializationContext, LogFile logFile) {String config = getSelfInitializationConfig();if (config != null && logFile == null) {// self initialization has occurred, reinitialize in case of property changesreinitialize(initializationContext);return;}if (config == null) {config = getSpringInitializationConfig();}if (config != null) {loadConfiguration(initializationContext, config, logFile);return;}loadDefaults(initializationContext, logFile);}