Commit d5a42a92df8817ece8d4e0a9c19cfbcc2f4055e1

Authored by YunaiV
1 parent 33ab45fd

梳理 logback-spring.xml 配置文件

src/main/resources/application-local.yaml
@@ -145,8 +145,8 @@ spring: @@ -145,8 +145,8 @@ spring:
145 # 日志文件配置 145 # 日志文件配置
146 logging: 146 logging:
147 file: 147 file:
148 - path: ${user.home}/logs/ # 日志文件的路径  
149 - name: ${spring.application.name} # 日志文件名 148 +# path: ${user.home}/logs/ # 日志文件的路径
  149 + name: ${user.home}/logs/${spring.application.name}.log # 日志文件名,全路径
150 150
151 --- #################### 芋道相关配置 #################### 151 --- #################### 芋道相关配置 ####################
152 152
src/main/resources/logback-spring.xml
1 <configuration> 1 <configuration>
2 - <!-- 变量 --> 2 + <!-- 引用 Spring Boot 的 logback 基础配置 -->
  3 + <include resource="org/springframework/boot/logging/logback/defaults.xml" />
  4 + <!-- 变量 yudao.info.base-package,基础业务包 -->
3 <springProperty scope="context" name="yudao.info.base-package" source="yudao.info.base-package"/> 5 <springProperty scope="context" name="yudao.info.base-package" source="yudao.info.base-package"/>
4 - <property name="PATTERN_DEFAULT" value="%d{yyyy-MM-dd HH:mm:ss.SSS} | %tid | %thread | %-5level | %msg%n"/> 6 + <!-- 格式化输出:%d 表示日期,%X{tid} SkWalking 链路追踪编号,%thread 表示线程名,%-5level:级别从左显示 5 个字符宽度,%msg:日志消息,%n是换行符 -->
  7 +<!-- <property name="PATTERN_DEFAULT" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%X{tid}] [%thread] %-5level %logger{36} -%msg%n"/>-->
  8 + <property name="PATTERN_DEFAULT" value="%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}} ${LOG_LEVEL_PATTERN:-%5p} ${PID:- } --- [%thread] [%X{tid}] %-40.40logger{39} : %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}"/>
5 9
6 <!-- 控制台 Appender --> 10 <!-- 控制台 Appender -->
7 <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">      11 <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">     
@@ -13,22 +17,34 @@ @@ -13,22 +17,34 @@
13 </appender> 17 </appender>
14 18
15 <!-- 文件 Appender --> 19 <!-- 文件 Appender -->
  20 + <!-- 参考 Spring Boot 的 file-appender.xml 编写 -->
16 <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> 21 <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
17 <encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder"> 22 <encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
18 <layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.TraceIdPatternLogbackLayout"> 23 <layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.TraceIdPatternLogbackLayout">
19 <pattern>${PATTERN_DEFAULT}</pattern> 24 <pattern>${PATTERN_DEFAULT}</pattern>
20 </layout> 25 </layout>
21 </encoder> 26 </encoder>
  27 + <!-- 日志文件名 -->
  28 + <file>${LOG_FILE}</file>
22 <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> 29 <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
23 - <fileNamePattern>${LOG_FILE}.%d{yyyy-MM-dd}.%i.log}</fileNamePattern>  
24 - <maxFileSize>10MB</maxFileSize>  
25 - <maxHistory>7</maxHistory>  
26 - <cleanHistoryOnStart>false</cleanHistoryOnStart> 30 + <!-- 滚动后的日志文件名 -->
  31 + <fileNamePattern>${LOGBACK_ROLLINGPOLICY_FILE_NAME_PATTERN:-${LOG_FILE}.%d{yyyy-MM-dd}.%i.gz}</fileNamePattern>
  32 + <!-- 启动服务时,是否清理历史日志,一般不建议清理 -->
  33 + <cleanHistoryOnStart>${LOGBACK_ROLLINGPOLICY_CLEAN_HISTORY_ON_START:-false}</cleanHistoryOnStart>
  34 + <!-- 日志文件,到达多少容量,进行滚动 -->
  35 + <maxFileSize>${LOGBACK_ROLLINGPOLICY_MAX_FILE_SIZE:-10MB}</maxFileSize>
  36 + <!-- 日志文件的总大小,0 表示不限制 -->
  37 + <totalSizeCap>${LOGBACK_ROLLINGPOLICY_TOTAL_SIZE_CAP:-0}</totalSizeCap>
  38 + <!-- 日志文件的保留天数 -->
  39 + <maxHistory>${LOGBACK_ROLLINGPOLICY_MAX_HISTORY:-30}</maxHistory>
27 </rollingPolicy> 40 </rollingPolicy>
28 </appender> 41 </appender>
  42 + <!-- 异步写入日志,提升性能 -->
29 <appender name="ASYNC" class="ch.qos.logback.classic.AsyncAppender"> 43 <appender name="ASYNC" class="ch.qos.logback.classic.AsyncAppender">
  44 + <!-- 不丢失日志。默认的,如果队列的 80% 已满,则会丢弃 TRACT、DEBUG、INFO 级别的日志 -->
30 <discardingThreshold>0</discardingThreshold> 45 <discardingThreshold>0</discardingThreshold>
31 - <queueSize>10</queueSize> 46 + <!-- 更改默认的队列的深度,该值会影响性能。默认值为 256 -->
  47 + <queueSize>256</queueSize>
32 <appender-ref ref="FILE"/> 48 <appender-ref ref="FILE"/>
33 </appender> 49 </appender>
34 50