|
@@ -0,0 +1,162 @@
|
|
|
+<?xml version="1.0" encoding="UTF-8"?>
|
|
|
+
|
|
|
+<included>
|
|
|
+ <!-- 定义日志文件 输入位置 -->
|
|
|
+ <springProperty name="log_dir" source="logging.path" defaultValue="./logs"/>
|
|
|
+ <property name="log.pattern"
|
|
|
+ value="%d{yyyy-MM-dd HH:mm:ss.SSS} %X{THREAD_NOTE} [%thread] %-5level %logger - %msg%n"/>
|
|
|
+ <property name="log.maxHistory" value="90" />
|
|
|
+
|
|
|
+ <!--# Console -->
|
|
|
+ <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
|
|
|
+ <!-- 典型的日志pattern -->
|
|
|
+ <encoder>
|
|
|
+ <pattern>[%-5level %d{HH:mm:ss.SSS} | %X{THREAD_NOTE} | %thread | %logger.%method] [%L] - %msg%n</pattern>
|
|
|
+ <charset>UTF-8</charset> <!-- 此处设置字符集 -->
|
|
|
+ </encoder>
|
|
|
+ </appender>
|
|
|
+
|
|
|
+ <!-- ERROR级别日志 -->
|
|
|
+ <!-- 滚动记录文件,先将日志记录到指定文件,当符合某个条件时,将日志记录到其他文件 RollingFileAppender-->
|
|
|
+ <appender name="ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
|
|
+ <!-- 过滤器,只记录WARN级别的日志 -->
|
|
|
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
|
|
|
+ <level>ERROR</level>
|
|
|
+ <onMatch>ACCEPT</onMatch>
|
|
|
+ <onMismatch>DENY</onMismatch>
|
|
|
+ </filter>
|
|
|
+
|
|
|
+ <encoder>
|
|
|
+ <pattern>${log.pattern}</pattern>
|
|
|
+ <!-- 此处设置字符集 -->
|
|
|
+ <charset>UTF-8</charset>
|
|
|
+ </encoder>
|
|
|
+
|
|
|
+ <!-- 最常用的滚动策略,它根据时间来制定滚动策略.既负责滚动也负责出发滚动 -->
|
|
|
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
|
|
+ <!--日志输出位置 可相对、和绝对路径 -->
|
|
|
+ <fileNamePattern>${log_dir}/%d{yyyy-MM-dd}/error.log</fileNamePattern>
|
|
|
+ <!-- 可选节点,控制保留的归档文件的最大数量,超出数量就删除旧文件假设设置每个月滚动,且<maxHistory>是6,
|
|
|
+ 则只保存最近6个月的文件,删除之前的旧文件。注意,删除旧文件是,那些为了归档而创建的目录也会被删除-->
|
|
|
+ <maxHistory>${log.maxHistory}</maxHistory>
|
|
|
+ </rollingPolicy>
|
|
|
+ </appender>
|
|
|
+
|
|
|
+ <!-- WARN级别日志 appender -->
|
|
|
+ <appender name="WARN" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
|
|
+ <!-- 过滤器,只记录WARN级别的日志 -->
|
|
|
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
|
|
|
+ <level>WARN</level>
|
|
|
+ <onMatch>ACCEPT</onMatch>
|
|
|
+ <onMismatch>DENY</onMismatch>
|
|
|
+ </filter>
|
|
|
+
|
|
|
+
|
|
|
+ <encoder>
|
|
|
+ <pattern>${log.pattern}</pattern>
|
|
|
+ <!-- 此处设置字符集 -->
|
|
|
+ <charset>UTF-8</charset>
|
|
|
+ </encoder>
|
|
|
+
|
|
|
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
|
|
+ <!-- 按天回滚 daily -->
|
|
|
+ <fileNamePattern>${log_dir}/%d{yyyy-MM-dd}/warn.log
|
|
|
+ </fileNamePattern>
|
|
|
+ <!-- 日志最大的历史 60天 -->
|
|
|
+ <maxHistory>${log.maxHistory}</maxHistory>
|
|
|
+ </rollingPolicy>
|
|
|
+
|
|
|
+ </appender>
|
|
|
+
|
|
|
+ <!-- INFO级别日志 appender -->
|
|
|
+ <appender name="INFO" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
|
|
+ <!-- 过滤器,只记录INFO级别的日志 -->
|
|
|
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
|
|
|
+ <level>INFO</level>
|
|
|
+ <onMatch>ACCEPT</onMatch>
|
|
|
+ <onMismatch>DENY</onMismatch>
|
|
|
+ </filter>
|
|
|
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
|
|
+ <!-- 按天回滚 daily -->
|
|
|
+ <fileNamePattern>${log_dir}/%d{yyyy-MM-dd}/info.log
|
|
|
+ </fileNamePattern>
|
|
|
+ <!-- 日志最大的历史 60天 -->
|
|
|
+ <maxHistory>${log.maxHistory}</maxHistory>
|
|
|
+ </rollingPolicy>
|
|
|
+
|
|
|
+
|
|
|
+ <encoder>
|
|
|
+ <pattern>${log.pattern}</pattern>
|
|
|
+ <!-- 此处设置字符集 -->
|
|
|
+ <charset>UTF-8</charset>
|
|
|
+ </encoder>
|
|
|
+ </appender>
|
|
|
+
|
|
|
+ <!-- DEBUG级别日志 appender -->
|
|
|
+ <appender name="DEBUG" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
|
|
+ <!-- 过滤器,只记录DEBUG级别的日志 -->
|
|
|
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
|
|
|
+ <level>DEBUG</level>
|
|
|
+ <onMatch>ACCEPT</onMatch>
|
|
|
+ <onMismatch>DENY</onMismatch>
|
|
|
+ </filter>
|
|
|
+ <encoder>
|
|
|
+ <pattern>${log.pattern}</pattern>
|
|
|
+ <!-- 此处设置字符集 -->
|
|
|
+ <charset>UTF-8</charset>
|
|
|
+ </encoder>
|
|
|
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
|
|
+ <!-- 按天回滚 daily -->
|
|
|
+ <fileNamePattern>${log_dir}/%d{yyyy-MM-dd}/debug.log
|
|
|
+ </fileNamePattern>
|
|
|
+ <!-- 日志最大的历史 60天 -->
|
|
|
+ <maxHistory>${log.maxHistory}</maxHistory>
|
|
|
+ >
|
|
|
+ </rollingPolicy>
|
|
|
+
|
|
|
+ </appender>
|
|
|
+
|
|
|
+ <!-- TRACE级别日志 appender -->
|
|
|
+ <appender name="TRACE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
|
|
+ <!-- 过滤器,只记录ERROR级别的日志 -->
|
|
|
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
|
|
|
+ <level>TRACE</level>
|
|
|
+ <onMatch>ACCEPT</onMatch>
|
|
|
+ <onMismatch>DENY</onMismatch>
|
|
|
+ </filter>
|
|
|
+ <encoder>
|
|
|
+ <pattern>${log.pattern}</pattern>
|
|
|
+ <!-- 此处设置字符集 -->
|
|
|
+ <charset>UTF-8</charset>
|
|
|
+ </encoder>
|
|
|
+ <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
|
|
+ <!-- 按天回滚 daily -->
|
|
|
+ <fileNamePattern>${log_dir}/%d{yyyy-MM-dd}/trace.log
|
|
|
+ </fileNamePattern>
|
|
|
+ <!-- 日志最大的历史 60天 -->
|
|
|
+ <maxHistory>${log.maxHistory}</maxHistory>
|
|
|
+
|
|
|
+ </rollingPolicy>
|
|
|
+ >
|
|
|
+ </appender>
|
|
|
+
|
|
|
+ <!--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"/>
|
|
|
+
|
|
|
+ <!-- root级别 DEBUG -->
|
|
|
+ <root level="INFO">
|
|
|
+ <!-- 控制台输出 STDOUT-->
|
|
|
+ <appender-ref ref="STDOUT"/>
|
|
|
+ <appender-ref ref="DEBUG"/>
|
|
|
+ <!-- 文件输出 -->
|
|
|
+ <appender-ref ref="ERROR"/>
|
|
|
+ <appender-ref ref="INFO"/>
|
|
|
+ <appender-ref ref="WARN"/>
|
|
|
+ <appender-ref ref="DEBUG"/>
|
|
|
+ <appender-ref ref="TRACE"/>
|
|
|
+ </root>
|
|
|
+
|
|
|
+</included>
|