88e030b7
王彪总
init project
|
1
2
3
|
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds">
|
1d418ca8
王彪总
fix(config): 更新配置...
|
4
5
6
7
8
9
10
|
<!-- 异步日志appender,大幅减少日志I/O对业务的阻塞 -->
<appender name="ASYNC_STDOUT" class="ch.qos.logback.classic.AsyncAppender">
<queueSize>512</queueSize>
<discardingThreshold>0</discardingThreshold>
<neverBlock>true</neverBlock>
<appender-ref ref="STDOUT_FILE"/>
</appender>
|
88e030b7
王彪总
init project
|
11
12
13
14
|
<!-- 控制台输出 -->
<appender name="STDOUT_FILE" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
88e030b7
王彪总
init project
|
15
16
17
18
|
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
</appender>
|
1d418ca8
王彪总
fix(config): 更新配置...
|
19
20
21
22
23
|
<appender name="ASYNC_INFO" class="ch.qos.logback.classic.AsyncAppender">
<queueSize>512</queueSize>
<discardingThreshold>0</discardingThreshold>
<neverBlock>true</neverBlock>
<appender-ref ref="INFO_FILE"/>
|
88e030b7
王彪总
init project
|
24
25
26
|
</appender>
<appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
1d418ca8
王彪总
fix(config): 更新配置...
|
27
|
<immediateFlush>false</immediateFlush>
|
88e030b7
王彪总
init project
|
28
29
30
31
32
33
34
35
36
|
<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">
|
1d418ca8
王彪总
fix(config): 更新配置...
|
37
|
<Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} -%msg%n</Pattern>
|
88e030b7
王彪总
init project
|
38
39
40
|
</layout>
</appender>
|
1d418ca8
王彪总
fix(config): 更新配置...
|
41
42
43
44
45
46
47
|
<appender name="ASYNC_ERROR" class="ch.qos.logback.classic.AsyncAppender">
<queueSize>256</queueSize>
<discardingThreshold>0</discardingThreshold>
<neverBlock>false</neverBlock>
<appender-ref ref="ERROR_FILE"/>
</appender>
|
88e030b7
王彪总
init project
|
48
49
50
51
52
53
|
<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">
|
1d418ca8
王彪总
fix(config): 更新配置...
|
54
|
<fileNamePattern>${LOG_PATH}/error-%d{yyyyMMdd}.log.%i</fileNamePattern>
|
88e030b7
王彪总
init project
|
55
56
57
58
59
60
|
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>500MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<maxHistory>2</maxHistory>
</rollingPolicy>
<layout class="ch.qos.logback.classic.PatternLayout">
|
1d418ca8
王彪总
fix(config): 更新配置...
|
61
|
<Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} -%msg%n</Pattern>
|
88e030b7
王彪总
init project
|
62
63
64
65
|
</layout>
</appender>
<!-- 请求响应日志 -->
|
1d418ca8
王彪总
fix(config): 更新配置...
|
66
67
68
69
70
71
72
|
<appender name="ASYNC_REQUEST" class="ch.qos.logback.classic.AsyncAppender">
<queueSize>512</queueSize>
<discardingThreshold>0</discardingThreshold>
<neverBlock>true</neverBlock>
<appender-ref ref="REQUEST_FILE"/>
</appender>
|
88e030b7
王彪总
init project
|
73
|
<appender name="REQUEST_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
1d418ca8
王彪总
fix(config): 更新配置...
|
74
|
<immediateFlush>false</immediateFlush>
|
88e030b7
王彪总
init project
|
75
76
77
78
79
80
81
82
83
84
85
86
87
88
|
<File>./logs/request.log</File>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>./logs/request-%d{yyyyMMdd}.log.%i</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>500MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<maxHistory>7</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>
<!-- API异常日志单独输出 -->
|
1d418ca8
王彪总
fix(config): 更新配置...
|
89
90
91
92
93
94
95
|
<appender name="ASYNC_API_ERROR" class="ch.qos.logback.classic.AsyncAppender">
<queueSize>256</queueSize>
<discardingThreshold>0</discardingThreshold>
<neverBlock>false</neverBlock>
<appender-ref ref="API_ERROR_FILE"/>
</appender>
|
88e030b7
王彪总
init project
|
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
|
<appender name="API_ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>ERROR</level>
</filter>
<File>./logs/api-error.log</File>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>./logs/api-error-%d{yyyyMMdd}.log.%i</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>500MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<maxHistory>7</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>
<logger name="org.springframework" level="ERROR">
|
1d418ca8
王彪总
fix(config): 更新配置...
|
114
|
<appender-ref ref="ASYNC_STDOUT"/>
|
88e030b7
王彪总
init project
|
115
116
|
</logger>
|
1d418ca8
王彪总
fix(config): 更新配置...
|
117
118
119
120
121
122
|
<!-- MyBatis/Druid SQL日志在生产环境关闭 -->
<logger name="com.apache.ibatis" level="ERROR"/>
<logger name="org.mybatis" level="ERROR"/>
<logger name="druid.sql.Statement" level="ERROR"/>
<logger name="druid.sql.ResultSet" level="ERROR"/>
<logger name="druid.sql.Connection" level="ERROR"/>
|
88e030b7
王彪总
init project
|
123
124
|
<logger name="com.java110" level="INFO">
|
1d418ca8
王彪总
fix(config): 更新配置...
|
125
|
<appender-ref ref="ASYNC_STDOUT"/>
|
88e030b7
王彪总
init project
|
126
127
128
129
|
</logger>
<!-- API请求/响应/异常日志 -->
<logger name="com.java110.api.aop" level="INFO" additivity="false">
|
1d418ca8
王彪总
fix(config): 更新配置...
|
130
131
132
133
|
<appender-ref ref="ASYNC_STDOUT"/>
<appender-ref ref="ASYNC_REQUEST"/>
<appender-ref ref="ASYNC_API_ERROR"/>
<appender-ref ref="ASYNC_ERROR"/>
|
88e030b7
王彪总
init project
|
134
135
|
</logger>
|
1d418ca8
王彪总
fix(config): 更新配置...
|
136
|
<logger name="io.shardingsphere" level="ERROR"/>
|
88e030b7
王彪总
init project
|
137
|
|
1d418ca8
王彪总
fix(config): 更新配置...
|
138
|
<logger name="org.thymeleaf" level="ERROR"/>
|
88e030b7
王彪总
init project
|
139
|
|
1d418ca8
王彪总
fix(config): 更新配置...
|
140
141
142
|
<logger name="org.apache.kafka" level="ERROR"/>
<logger name="org.quartz" level="ERROR"/>
|
88e030b7
王彪总
init project
|
143
144
|
<root level="INFO">
|
1d418ca8
王彪总
fix(config): 更新配置...
|
145
146
147
|
<appender-ref ref="ASYNC_STDOUT"/>
<appender-ref ref="ASYNC_INFO"/>
<appender-ref ref="ASYNC_ERROR"/>
|
88e030b7
王彪总
init project
|
148
149
150
|
</root>
</configuration>
|