12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- <!-- Logback configuration. See http://logback.qos.ch/manual/index.html -->
- <configuration scan="true" scanPeriod="2 seconds">
- <!-- 通用属性 -->
- <property name="LOG_PATH" value="../logs" />
- <property name="LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n"/>
- <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
- <!-- 日志输出编码 -->
- <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
- <encoder>
- <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
- <charset>UTF-8</charset>
- </encoder>
- </appender>
- <appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <File>logs/info.log</File>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>logs/info-%d{yyyyMMdd}.log.%i</fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>500MB</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>2</maxHistory>
- </rollingPolicy>
- <layout class="ch.qos.logback.classic.PatternLayout">
- <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} -%msg%n
- </Pattern>
- </layout>
- </appender>
- <appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>ERROR</level>
- </filter>
- <File>logs/error.log</File>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>logs/error-%d{yyyyMMdd}.log.%i
- </fileNamePattern>
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>500MB</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- <maxHistory>2</maxHistory>
- </rollingPolicy>
- <layout class="ch.qos.logback.classic.PatternLayout">
- <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} -%msg%n
- </Pattern>
- </layout>
- </appender>
- <!-- 操作日志文件 -->
- <appender name="OPERATION_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${LOG_PATH}/operation.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <fileNamePattern>${LOG_PATH}/operation.%d{yyyy-MM-dd}.log</fileNamePattern>
- <maxHistory>30</maxHistory>
- </rollingPolicy>
- <encoder>
- <pattern>${LOG_PATTERN}</pattern>
- </encoder>
- </appender>
- <logger name="com.ibatis" level="INFO" />
- <logger name="com.ibatis.common.jdbc.SimpleDataSource" level="INFO" />
- <logger name="com.ibatis.common.jdbc.ScriptRunner" level="INFO" />
- <logger name="com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate" level="INFO" />
- <logger name="java.sql.Connection" level="INFO" />
- <logger name="java.sql.Statement" level="INFO" />
- <logger name="java.sql.PreparedStatement" level="INFO" />
- <logger name="me.chanjar.weixin.cp.api.impl.BaseWxCpServiceImpl" level="OFF" />
- <logger name="me.chanjar.weixin.common.error.WxErrorException" level="OFF" />
- <!-- 操作日志记录器 -->
- <logger name="OPERATION_LOGGER" level="INFO" additivity="false">
- <appender-ref ref="OPERATION_FILE"/>
- </logger>
- <root level="INFO">
- <appender-ref ref="INFO_FILE" />
- <appender-ref ref="ERROR_FILE" />
- <appender-ref ref="STDOUT" />
- </root>
- </configuration>
|