logback-spring.xml 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EHR全局异常日志处理配置,包含每个微服务的默认日志配置,
  3. 如果有其他日志处理需求,请拷贝此文件,并按照以下说明(73行)进行配置 -->
  4. <configuration scan="true">
  5. <springProperty scope="context" name="appName" source="spring.application.name" />
  6. <property name="log_home" value="/Users/Mewtwo/ideaSpace/log/wlyy-logs/${appName}" />
  7. <property name="max_history" value="30"/>
  8. <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" />
  9. <conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" />
  10. <conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter" />
  11. <!-- 彩色日志格式 -->
  12. <property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr([${appName}]){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}" />
  13. <!-- 文件日志格式 -->
  14. <property name="FILE_LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss} [${appName}] %-5level --- [%thread] - %logger{36}: %msg%n" />
  15. <!-- Standard output -->
  16. <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
  17. <encoder>
  18. <pattern>${CONSOLE_LOG_PATTERN}</pattern>
  19. <charset class="java.nio.charset.Charset">UTF-8</charset>
  20. </encoder>
  21. </appender>
  22. <!-- Api Log Start -->
  23. <appender name="ApiInfoFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
  24. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  25. <fileNamePattern>${log_home}/api/info/%d{yyyy-MM-dd}.log</fileNamePattern>
  26. <maxHistory>${max_history}</maxHistory>
  27. </rollingPolicy>
  28. <encoder>
  29. <pattern>${FILE_LOG_PATTERN}</pattern>
  30. <charset class="java.nio.charset.Charset">UTF-8</charset>
  31. </encoder>
  32. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  33. <level>INFO</level>
  34. <onMatch>ACCEPT</onMatch>
  35. <onMismatch>DENY</onMismatch>
  36. </filter>
  37. </appender>
  38. <appender name="ApiWarnFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
  39. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  40. <fileNamePattern>${log_home}/api/warn/%d{yyyy-MM-dd}.log</fileNamePattern>
  41. <maxHistory>${max_history}</maxHistory>
  42. </rollingPolicy>
  43. <encoder>
  44. <pattern>${FILE_LOG_PATTERN}</pattern>
  45. <charset class="java.nio.charset.Charset">UTF-8</charset>
  46. </encoder>
  47. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  48. <level>WARN</level>
  49. <onMatch>ACCEPT</onMatch>
  50. <onMismatch>DENY</onMismatch>
  51. </filter>
  52. </appender>
  53. <appender name="ApiErrorFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
  54. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  55. <fileNamePattern>${log_home}/api/error/%d{yyyy-MM-dd}.log</fileNamePattern>
  56. <maxHistory>${max_history}</maxHistory>
  57. </rollingPolicy>
  58. <encoder>
  59. <pattern>${FILE_LOG_PATTERN}</pattern>
  60. <charset class="java.nio.charset.Charset">UTF-8</charset>
  61. </encoder>
  62. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  63. <level>ERROR</level>
  64. <onMatch>ACCEPT</onMatch>
  65. <onMismatch>DENY</onMismatch>
  66. </filter>
  67. </appender>
  68. <!-- Api Log End -->
  69. <!-- Business Log Start -->
  70. <appender name="BusinessInfoFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
  71. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  72. <fileNamePattern>${log_home}/business/info/%d{yyyy-MM-dd}.log</fileNamePattern>
  73. <maxHistory>${max_history}</maxHistory>
  74. </rollingPolicy>
  75. <encoder>
  76. <pattern>${FILE_LOG_PATTERN}</pattern>
  77. <charset class="java.nio.charset.Charset">UTF-8</charset>
  78. </encoder>
  79. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  80. <level>INFO</level>
  81. <onMatch>ACCEPT</onMatch>
  82. <onMismatch>DENY</onMismatch>
  83. </filter>
  84. </appender>
  85. <appender name="BusinessWarnFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
  86. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  87. <fileNamePattern>${log_home}/business/warn/%d{yyyy-MM-dd}.log</fileNamePattern>
  88. <maxHistory>${max_history}</maxHistory>
  89. </rollingPolicy>
  90. <encoder>
  91. <pattern>${FILE_LOG_PATTERN}</pattern>
  92. <charset class="java.nio.charset.Charset">UTF-8</charset>
  93. </encoder>
  94. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  95. <level>WARN</level>
  96. <onMatch>ACCEPT</onMatch>
  97. <onMismatch>DENY</onMismatch>
  98. </filter>
  99. </appender>
  100. <appender name="BusinessErrorFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
  101. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  102. <fileNamePattern>${log_home}/business/error/%d{yyyy-MM-dd}.log</fileNamePattern>
  103. <maxHistory>${max_history}</maxHistory>
  104. </rollingPolicy>
  105. <encoder>
  106. <pattern>${FILE_LOG_PATTERN}</pattern>
  107. <charset class="java.nio.charset.Charset">UTF-8</charset>
  108. </encoder>
  109. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  110. <level>ERROR</level>
  111. <onMatch>ACCEPT</onMatch>
  112. <onMismatch>DENY</onMismatch>
  113. </filter>
  114. </appender>
  115. <!-- Business Log End -->
  116. <!-- 如果微服务纳入全局异常处理,请勿修改以上代码,有新的日志处理请在以下追加!!! -->
  117. <!-- Other Log Start -->
  118. <!-- Other Log End -->
  119. <!-- 针对接口调用出错日志(单独记录) -->
  120. <logger name="com.yihu.jw.web.handler.GlobalExceptionHandler" level="WARN" additivity="false">
  121. <appender-ref ref="console" />
  122. <appender-ref ref="ApiInfoFile" />
  123. <appender-ref ref="ApiWarnFile" />
  124. <appender-ref ref="ApiErrorFile" />
  125. </logger>
  126. <!-- 业务日志 -->
  127. <logger name="com.yihu.jw">
  128. <appender-ref ref="BusinessInfoFile" />
  129. <appender-ref ref="BusinessWarnFile" />
  130. <appender-ref ref="BusinessErrorFile" />
  131. </logger>
  132. <!-- 基础日志 -->
  133. <root level="INFO">
  134. <appender-ref ref="console" />
  135. </root>
  136. </configuration>