|
@@ -0,0 +1,98 @@
|
|
|
+<?xml version="1.0" encoding="UTF-8"?>
|
|
|
+<configuration scan="false" scanPeriod="60 seconds">
|
|
|
+
|
|
|
+ <include resource="org/springframework/boot/logging/logback/defaults.xml"/>
|
|
|
+ <springProperty scope="context" name="appName" source="spring.application.name" defaultValue="wideth-service" />
|
|
|
+ <springProperty scope="context" name="printConsole" source="log.console.print" defaultValue="true" />
|
|
|
+
|
|
|
+ <property name="LOG_PATH" value="/data/logs" />
|
|
|
+
|
|
|
+ <!-- 控制台设置 -->
|
|
|
+ <contextName>logback</contextName>
|
|
|
+ <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
|
|
|
+ <encoder>
|
|
|
+ <pattern>%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${PID:- }){magenta} %clr(${appName}){faint} %clr([%15.15t]){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(%-40.40logger{39}){cyan} %clr([line: %4line]){magenta} %clr(:){faint} %m%n</pattern>
|
|
|
+ </encoder>
|
|
|
+ </appender>
|
|
|
+
|
|
|
+ <!-- ALL -->
|
|
|
+ <appender name="allAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
|
|
+ <file>${LOG_PATH}/${appName}/all.log</file>
|
|
|
+ <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
|
|
+ <FileNamePattern>${LOG_PATH}/${appName}/${appName}-info-%d{yyyy-MM-dd}.%i.log</FileNamePattern>
|
|
|
+ <maxFileSize>100MB</maxFileSize>
|
|
|
+ <maxHistory>30</maxHistory>
|
|
|
+ <totalSizeCap>3000MB</totalSizeCap>
|
|
|
+ </rollingPolicy>
|
|
|
+ <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
|
|
+ <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS}|-|${appName}|-|%thread|-|%level|-|%logger|-|%msg%n</pattern>
|
|
|
+ </encoder>
|
|
|
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
|
|
|
+ <level>DEBUG</level>
|
|
|
+ <onMatch>DENY</onMatch>
|
|
|
+ <onMismatch>ACCEPT</onMismatch>
|
|
|
+ </filter>
|
|
|
+ </appender>
|
|
|
+
|
|
|
+
|
|
|
+ <!-- ERROR -->
|
|
|
+ <appender name="errorAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
|
|
+ <file>${LOG_PATH}/${appName}/error.log</file>
|
|
|
+ <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
|
|
+ <FileNamePattern>${LOG_PATH}/${appName}/${appName}-error-%d{yyyy-MM-dd}.%i.log</FileNamePattern>
|
|
|
+ <maxFileSize>100MB</maxFileSize>
|
|
|
+ <maxHistory>30</maxHistory>
|
|
|
+ <totalSizeCap>3000MB</totalSizeCap>
|
|
|
+ </rollingPolicy>
|
|
|
+ <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
|
|
+ <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS}|-|${appName}|-|%thread|-|%level|-|%logger|-|%msg%n</pattern>
|
|
|
+ </encoder>
|
|
|
+
|
|
|
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
|
|
|
+ <level>ERROR</level>
|
|
|
+ <onMatch>ACCEPT</onMatch>
|
|
|
+ <onMismatch>DENY</onMismatch>
|
|
|
+ </filter>
|
|
|
+ </appender>
|
|
|
+
|
|
|
+ <appender name="allAsyncLog" class="ch.qos.logback.classic.AsyncAppender">
|
|
|
+ <param name="discardingThreshold" value="0"/>
|
|
|
+ <param name="queueSize" value="4096"/>
|
|
|
+ <appender-ref ref="allAppender" />
|
|
|
+ </appender>
|
|
|
+
|
|
|
+ <appender name="errorAsyncLog" class="ch.qos.logback.classic.AsyncAppender">
|
|
|
+ <param name="discardingThreshold" value="0"/>
|
|
|
+ <param name="queueSize" value="2048"/>
|
|
|
+ <appender-ref ref="errorAppender" />
|
|
|
+ </appender>
|
|
|
+
|
|
|
+ <logger name="org" level="info"/>
|
|
|
+ <logger name="com.netflix" level="ERROR"/>
|
|
|
+ <logger name="com.sun" level="ERROR"/>
|
|
|
+ <logger name="io.lettuce" level="ERROR"/>
|
|
|
+ <logger name="com.alibaba" level="ERROR"/>
|
|
|
+ <logger name="springfox" level="ERROR"/>
|
|
|
+ <logger name="sun.rmi" level="ERROR"/>
|
|
|
+ <logger name="sun.net" level="ERROR"/>
|
|
|
+ <logger name="javax" level="ERROR"/>
|
|
|
+ <logger name="com.hfln" level="DEBUG"/>
|
|
|
+ <!--<logger name="com.xxl" level="ERROR"/>-->
|
|
|
+ <logger name="org.mongodb.driver" level="ERROR"/>
|
|
|
+
|
|
|
+
|
|
|
+ <root level="INFO">
|
|
|
+ <!--<root level="DEBUG">-->
|
|
|
+ <if condition='property("printConsole").equals("true")'>
|
|
|
+ <then>
|
|
|
+ <appender-ref ref="STDOUT"/>
|
|
|
+ </then>
|
|
|
+ </if>
|
|
|
+ <appender-ref ref="allAsyncLog"/>
|
|
|
+ <!--<appender-ref ref="debugAsyncLog"/>
|
|
|
+ <appender-ref ref="warnAsyncLog"/>-->
|
|
|
+ <appender-ref ref="errorAsyncLog"/>
|
|
|
+ </root>
|
|
|
+</configuration>
|
|
|
+
|
|
|
+
|