|  |  |  | 
|---|
|  |  |  | <configuration> | 
|---|
|  |  |  | <appender name="consoleLog" class="ch.qos.logback.core.ConsoleAppender"> | 
|---|
|  |  |  | <layout class="ch.qos.logback.classic.PatternLayout"> | 
|---|
|  |  |  | <pattern> | 
|---|
|  |  |  | - %msg%n | 
|---|
|  |  |  | </pattern> | 
|---|
|  |  |  | <pattern>%highlight(%date{yyyy-MM-dd HH:mm:ss}) | %highlight(%-5level) | %highlight(%thread) | %highlight(%logger) | %msg%n</pattern> | 
|---|
|  |  |  | </layout> | 
|---|
|  |  |  | </appender> | 
|---|
|  |  |  | <property name="log.path" value="D:/code/logFile/visitsTimer"></property> | 
|---|
|  |  |  | <property name="log.path" value="logs/visitsTimer"></property> | 
|---|
|  |  |  | <property name="log.fileSize" value="100MB"></property> | 
|---|
|  |  |  | <property name="log.historyDays" value="7"></property> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <appender name="fileInfoLog" class="ch.qos.logback.core.rolling.RollingFileAppender"> | 
|---|
|  |  |  | <filter class="ch.qos.logback.classic.filter.LevelFilter"> | 
|---|
|  |  |  | <level>ERROR</level> | 
|---|
|  |  |  | 
|---|
|  |  |  | <onMismatch>ACCEPT</onMismatch> | 
|---|
|  |  |  | </filter> | 
|---|
|  |  |  | <encoder> | 
|---|
|  |  |  | <pattern> | 
|---|
|  |  |  | %msg%n | 
|---|
|  |  |  | </pattern> | 
|---|
|  |  |  | <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern> | 
|---|
|  |  |  | </encoder> | 
|---|
|  |  |  | <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> | 
|---|
|  |  |  | <!--路径--> | 
|---|
|  |  |  | 
|---|
|  |  |  | <level>ERROR</level> | 
|---|
|  |  |  | </filter> | 
|---|
|  |  |  | <encoder> | 
|---|
|  |  |  | <pattern> | 
|---|
|  |  |  | %msg%n | 
|---|
|  |  |  | </pattern> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern> | 
|---|
|  |  |  | </encoder> | 
|---|
|  |  |  | <!--滚动策略--> | 
|---|
|  |  |  | <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> | 
|---|
|  |  |  | 
|---|
|  |  |  | <totalSizeCap>1GB</totalSizeCap> | 
|---|
|  |  |  | </rollingPolicy> | 
|---|
|  |  |  | </appender> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- 异步写入日志 --> | 
|---|
|  |  |  | <appender name ="ASYNC" class= "ch.qos.logback.classic.AsyncAppender"> | 
|---|
|  |  |  | <!-- 不丢失日志.默认的,如果队列的80%已满,则会丢弃TRACT、DEBUG、INFO级别的日志 --> | 
|---|
|  |  |  | <discardingThreshold >0</discardingThreshold> | 
|---|
|  |  |  | <!-- 更改默认的队列的深度,该值会影响性能.默认值为256 --> | 
|---|
|  |  |  | <queueSize>512</queueSize> | 
|---|
|  |  |  | <!-- 添加附加的appender,最多只能添加一个 --> | 
|---|
|  |  |  | <appender-ref ref ="fileInfoLog"/> | 
|---|
|  |  |  | </appender> | 
|---|
|  |  |  | <root level="info"> | 
|---|
|  |  |  | <appender-ref ref="consoleLog"/> | 
|---|
|  |  |  | <appender-ref ref="fileInfoLog"/> | 
|---|