mysql通用日志不打印_解决logback不打印mybatis的SQL日志的问题
工作這么多年,今天還是因?yàn)長ogback的這個問題稍微卡了一下,慚愧。
問題描述:
logback配置了如下信息:
...此處省略File Appender內(nèi)容
${logbase}sql.%d{yyyy-MM-dd}.log
30
[%d{yyyy-MM-dd HH:mm:ss} [%t] [%X{traceId}] %5p %c:%L] %m%n
可以看到sql這個appender配置, 這里文件是 sql-時間戳.log
${logbase}sql.%d{yyyy-MM-dd}.log
但是日志不在 sql-時間戳.log中,而在 file中(file appender的配置文中沒有給出, 省略)。
后面看file的日志發(fā)現(xiàn)(如果你沒有file,那么配置console, 然后就看 console ),我這種情況是 Mybatis Mapper的日志都是以dao開頭
那么好,修改 logger name ="dao",問題解決。
為什么我這里是Mybatis Mapper的日志都是以dao開頭?
查看mybatis-config.xml配置文件后,發(fā)現(xiàn):
/p>
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
logPrefix="dao.", 這句導(dǎo)致dao的日志,不是以他原來的包名,而是以dao.開頭. 因此 logger name=""不寫dao開頭的name, 就無法匹配, 導(dǎo)致無法打印到對應(yīng)的appender所創(chuàng)建的文件內(nèi).
總結(jié)
以上是生活随笔為你收集整理的mysql通用日志不打印_解决logback不打印mybatis的SQL日志的问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python调用selenium的get
- 下一篇: java smack 例子_java+s