logback打印sql

Posted JAVA成长伴侣

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了logback打印sql相关的知识,希望对你有一定的参考价值。

以前服务器上不打印sql, 因为sql日志太多,会将其他日志刷掉(日志太多自动删除),参考别人将sql日志分开来,互补影响。挺不错的思路,预研如下。


 <appender name="DRUIDSQL" class="ch.qos.logback.core.rolling.RollingFileAppender"> <!-- 日志文件的路径及文件名 --> <file>${LOG_HOME}/${COMPONENT_NAME}_sql.log</file> <!-- 追加方式记录日志 --> <append>true</append> <!-- 日志记录器的滚动策略,按日期,按大小记录 --> <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> <fileNamePattern>${LOG_HOME}/${COMPONENT_NAME}_sql.%d{yyyy-MM-dd}.%i.log</fileNamePattern> <maxFileSize>10MB</maxFileSize> <maxHistory>30</maxHistory> <totalSizeCap>2GB</totalSizeCap> </rollingPolicy> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} [%X{RequestId}] - %msg%n</pattern> <charset>utf-8</charset> </encoder> </appender>

方法1:配置dao路径

yml文件

logging: level: com: yangyc: baseservice: test: mapper: debug

 

logback-config.xml

<logger name="com.yangyc.baseservice.ms.mapper" level="debug" additivity="false"> <appender-ref ref="DRUIDSQL"/> </logger>





方法2:

yml文件

spring:  datasource: druid: filters: stat,slf4j

logback-config.xml

<logger name="druid.sql.Statement" level="debug" additivity="false"> <appender-ref ref="DRUIDSQL"/> </logger>


方法2一直失败,没有打印sql,后面找到原因是durid的filters没有配置slf4j




另外附上log4j2的配置

yml文件

logging: level: com: yangyc: baseservice: test: mapper: debug


logback-config.xml

<RollingFile name="DRUIDSQL" fileName="${logFilePath}/druid-sql.log" filePattern="${logFilePath}/$${date:yyyy-MM}/druid-%d{yyyy-MM-dd}-%i.log"> <PatternLayout pattern="${LOG_PATTERN}"/> <Policies> <SizeBasedTriggeringPolicy size="200 MB"/> <TimeBasedTriggeringPolicy/> </Policies> </RollingFile>
<logger name="druid.sql.Statement" level="debug" additivity="false"> <appender-ref ref="DRUIDSQL"/> </logger>



以上是关于logback打印sql的主要内容,如果未能解决你的问题,请参考以下文章

logback mybatis 打印sql语句

(转)logback 打印Mybitis中的sql执行过程

(转)logback 打印Mybitis中的sql执行过程

pringBoot结合LogBack打印Sql

spring boot+logback+JdbcTemplate打印sql日志

spring-boot logback sql语句怎么打印