как настроить logback для Mybatis для печати моего SQL
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<Pattern>%d{HH:mm:ss} %-5level %logger{35} - %msg%n
</Pattern>
</encoder>
</appender>
<logger name="java.sql" level="DEBUG" >
<appender-ref ref="STDOUT" />
</logger>
<root>
<level value="ERROR" />
<appender-ref ref="STDOUT" />
</root>
</configuration>
Я хочу печатать sql и только ошибки,но он не печатает SQL в консоли, может ли кто-нибудь мне помочь? спасибо большое
3 ответов
вы конфигурация appender является правильной, но конфигурация регистратора нет.
для регистрации операторов SQL для конкретного MyBatis mapper set DEBUG (трассировка для просмотра параметров и результатов запроса) уровень для logger с полным именем mapper
<logger name="com.mycompany.myapp.mapper.MyMapper" level="DEBUG"/>
вы можете регистрировать все операторы SQL из всех сопоставителей, если они находятся в одном пакете, как это
<logger name="com.mycompany.myapp.mapper" level="DEBUG"/>
<logger name="org.mybatis">
<level value="TRACE"/>
</logger>
<logger name="java.sql">
<level value="WARN"/>
</logger>
я использовал приведенный выше фрагмент кода в моем logback.xml и получил sql-запрос в logger. Если требуется напечатать sql в определенном регистраторе, используйте тег.
спасибо, я добавляю в logback.в XML
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${logFile}</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${logFile}.%d.zip</fileNamePattern>
<maxHistory>5</maxHistory>
</rollingPolicy>
<encoder>
<pattern>[%date] [%level] %msg [%file:%line] [%logger{100}] [%thread] [AspLink-${project.version}]%n</pattern>
</encoder>
</appender>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>[AspLink-${project.version}] [%level] %msg [%file:%line] [%logger{100}]%n</pattern>
</encoder>
</appender>
<logger name="liquibase" level="INFO" />
<logger name="ru.company.asplink.dao" level="DEBUG" />
<logger name="org.mybatis">
<level value="TRACE"/>
</logger>
<root level="INFO">
<appender-ref ref="FILE" />
<appender-ref ref="STDOUT" />
</root>