Created
September 27, 2019 08:39
-
-
Save qlong8807/788e164542498d0d78c54df5898f0e86 to your computer and use it in GitHub Desktop.
异步记录、INFO和ERROR分开存储、通用模板
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="UTF-8"?> | |
<configuration scan="true" scanPeriod="30 seconds" debug="true"> | |
<property name="LOG_HOME" value="logs"/> | |
<!--获取比info级别高(包括info级别)但除error级别的日志--> | |
<appender name="INFO-LOG" class="ch.qos.logback.core.rolling.RollingFileAppender"> | |
<filter class="ch.qos.logback.classic.filter.LevelFilter"> | |
<level>ERROR</level> | |
<onMatch>DENY</onMatch> | |
<onMismatch>ACCEPT</onMismatch> | |
</filter> | |
<encoder> | |
<pattern>%d{HH:mm:ss.SSS} %level %logger:%L %msg%n</pattern> | |
</encoder> | |
<!--滚动策略--> | |
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> | |
<!--路径--> | |
<fileNamePattern>${LOG_HOME}/info/%d{yyyy-MM-dd}.%i.log</fileNamePattern> | |
<maxHistory>30</maxHistory><!-- 保留30天的日志--> | |
<totalSizeCap>3GB</totalSizeCap> | |
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> | |
<maxFileSize>10MB</maxFileSize> | |
</timeBasedFileNamingAndTriggeringPolicy> | |
</rollingPolicy> | |
</appender> | |
<appender name="ERROR-LOG" class="ch.qos.logback.core.rolling.RollingFileAppender"> | |
<filter class="ch.qos.logback.classic.filter.ThresholdFilter"> | |
<level>ERROR</level> | |
</filter> | |
<encoder> | |
<pattern>%d{HH:mm:ss.SSS} %level %logger:%L %msg%n</pattern> | |
</encoder> | |
<!--滚动策略--> | |
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> | |
<!--路径--> | |
<fileNamePattern>${LOG_HOME}/err/%d{yyyy-MM-dd}.%i.log</fileNamePattern> | |
<maxHistory>30</maxHistory> | |
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> | |
<maxFileSize>10MB</maxFileSize> | |
</timeBasedFileNamingAndTriggeringPolicy> | |
</rollingPolicy> | |
</appender> | |
<!-- 异步INFO输出 --> | |
<appender name="ASYNC-INFO" class="ch.qos.logback.classic.AsyncAppender"> | |
<!-- 不丢失日志.默认的,如果队列的80%已满,则会丢弃TRACT、DEBUG、INFO级别的日志 --> | |
<discardingThreshold>0</discardingThreshold> | |
<!-- 更改默认的队列的深度,该值会影响性能.默认值为256 --> | |
<queueSize>256</queueSize> | |
<!-- 添加附加的appender,最多只能添加一个 --> | |
<appender-ref ref="INFO-LOG"/> | |
</appender> | |
<!-- 异步ERROR输出 --> | |
<appender name="ASYNC-ERROR" class="ch.qos.logback.classic.AsyncAppender"> | |
<!-- 不丢失日志.默认的,如果队列的80%已满,则会丢弃TRACT、DEBUG、INFO级别的日志 --> | |
<discardingThreshold>0</discardingThreshold> | |
<!-- 更改默认的队列的深度,该值会影响性能.默认值为256 --> | |
<queueSize>256</queueSize> | |
<!-- 添加附加的appender,最多只能添加一个 --> | |
<appender-ref ref="ERROR-LOG"/> | |
</appender> | |
<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender"> | |
<encoder charset="UTF-8"> | |
<!-- <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{35} - %msg %n</pattern> --> | |
<pattern>%d{HH:mm:ss.SSS} %level %logger:%L %msg%n</pattern> | |
<charset>utf8</charset> | |
</encoder> | |
</appender> | |
<root level="INFO"> | |
<appender-ref ref="ASYNC-INFO" /> | |
<appender-ref ref="ASYNC-ERROR" /> | |
<appender-ref ref="stdout" /> | |
</root> | |
</configuration> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment