<?xml version="1.0" encoding="UTF-8"?> <configuration debug="false"> <!-- 监听器,指定日志文件存放目录 --> <contextListener class="org.jeecg.utils.listener.CustomLogContextListener" /> <!--定义日志文件的存储地址 --> <property name="LOG_HOME" value="${LOG_PATH}/logs" /> <springProperty name="appName" scope="context" source="spring.application.name" /> <!--<property name="COLOR_PATTERN" value="%black(%contextName-) %red(%d{yyyy-MM-dd HH:mm:ss}) %green([%thread]) %highlight(%-5level) %boldMagenta( %replace(%caller{1}){'\t|Caller.{1}0|\r\n', ''})- %gray(%msg%xEx%n)" /> --> <!-- 控制台输出 --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符 <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50}:%L - %msg%n</pattern> --> <pattern>[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %logger:%L - %msg%n</pattern> </encoder> </appender> <!-- 按照每天生成日志文件 --> <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> <!--日志文件输出的文件名 --> <FileNamePattern>${LOG_HOME}/${appName}.%d{yyyy-MM-dd}.%i.log</FileNamePattern> <!--日志文件保留天数 --> <MaxHistory>30</MaxHistory> <maxFileSize>100MB</maxFileSize> <totalSizeCap>10GB</totalSizeCap> <cleanHistoryOnStart>true</cleanHistoryOnStart> </rollingPolicy> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符 --> <pattern>[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %logger{50}:%L - %msg%n</pattern> </encoder> </appender> <!-- 生成 error html格式日志开始 --> <!-- <appender name="HTML" class="ch.qos.logback.core.FileAppender"> --> <!-- <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> --> <!-- 设置日志级别,过滤掉info日志,只输入error日志 --> <!-- <level>ERROR</level> --> <!-- </filter> --> <!-- <encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder"> --> <!-- <layout class="ch.qos.logback.classic.html.HTMLLayout"> --> <!-- <pattern>%p%d%msg%M%F{32}%L</pattern> --> <!-- </layout> --> <!-- </encoder> --> <!-- <file>${LOG_HOME}/${appName}.error.html</file> --> <!-- </appender> --> <!-- 生成 error html格式日志结束 --> <!-- 每天生成一个html格式的日志开始 --> <!-- <appender name="FILE_HTML" class="ch.qos.logback.core.rolling.RollingFileAppender"> --> <!-- <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> --> <!-- 日志文件输出的文件名 --> <!-- <FileNamePattern>${LOG_HOME}/${appName}.%d{yyyy-MM-dd}.%i.html</FileNamePattern> --> <!-- 日志文件保留天数 --> <!-- <MaxHistory>30</MaxHistory> --> <!-- <MaxFileSize>100MB</MaxFileSize> --> <!-- <totalSizeCap>10GB</totalSizeCap> --> <!-- <cleanHistoryOnStart>true</cleanHistoryOnStart> --> <!-- </rollingPolicy> --> <!-- <encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder"> --> <!-- <layout class="ch.qos.logback.classic.html.HTMLLayout"> --> <!-- <pattern>%p%d%msg%M%F{32}%L</pattern> --> <!-- </layout> --> <!-- </encoder> --> <!-- </appender> --> <!-- 每天生成一个html格式的日志结束 --> <!--myibatis log configure --> <!-- <logger name="com.apache.ibatis" level="TRACE" /> --> <!-- <logger name="java.sql.Connection" level="DEBUG" /> --> <!-- <logger name="java.sql.Statement" level="DEBUG" /> --> <!-- <logger name="java.sql.PreparedStatement" level="DEBUG" /> --> <logger name="jdbc.connection" additivity="false" level="off"> <appender-ref ref="STDOUT" /> <appender-ref ref="FILE" /> </logger> <logger name="jdbc.resultset" additivity="false" level="off"> <appender-ref ref="STDOUT" /> <appender-ref ref="FILE" /> </logger> <logger name="jdbc.audit" additivity="false" level="off"> <appender-ref ref="STDOUT" /> <appender-ref ref="FILE" /> </logger> <logger name="jdbc.sqlonly" additivity="false" level="off"> <appender-ref ref="STDOUT" /> <appender-ref ref="FILE" /> </logger> <logger name="jdbc.sqltiming" additivity="false" level="info"> <appender-ref ref="STDOUT" /> <appender-ref ref="FILE" /> </logger> <!-- 日志输出级别 --> <root level="INFO"> <appender-ref ref="STDOUT" /> <appender-ref ref="FILE" /> <!-- <appender-ref ref="HTML" /> --> <!-- <appender-ref ref="FILE_HTML" /> --> </root> </configuration>