logback-spring.xml 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE configuration>
  3. <configuration>
  4. <include resource="org/springframework/boot/logging/logback/defaults.xml"/>
  5. <include resource="org/springframework/boot/logging/logback/console-appender.xml"/>
  6. <!--应用名称-->
  7. <springProperty scope="context" name="APP_NAME" source="spring.application.name"/>
  8. <!--日志文件保存路径-->
  9. <springProperty scope="context" name="LOG_FILE_PATH" source="logging.file.path"/>
  10. <springProperty scope="context" name="LOGSTASH_SERVER" source="lili.data.logstash.server"/>
  11. <contextName>${APP_NAME}</contextName>
  12. <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  13. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  14. <fileNamePattern>${LOG_FILE_PATH}/${APP_NAME}-%d{yyyy-MM-dd}.log</fileNamePattern>
  15. <maxHistory>30</maxHistory>
  16. </rollingPolicy>
  17. <encoder>
  18. <pattern>${FILE_LOG_PATTERN}</pattern>
  19. </encoder>
  20. </appender>
  21. <appender name="RocketmqClientAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
  22. <file>${LOG_FILE_PATH}/rocketmq.log</file>
  23. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  24. <fileNamePattern>${LOG_FILE_PATH}/rocketmq/rocketmq-%d{yyyy-MM-dd}.log</fileNamePattern>
  25. <maxHistory>30</maxHistory>
  26. <totalSizeCap>30MB</totalSizeCap>
  27. </rollingPolicy>
  28. <encoder>
  29. <pattern>%d{yy-MM-dd.HH:mm:ss.SSS} [%-16t] %-5p %-22c{0} %X{ServiceId} - %m%n</pattern>
  30. </encoder>
  31. </appender>
  32. <logger name="RocketmqClient" additivity="false">
  33. <level value="info" />
  34. <appender-ref ref="RocketmqClientAppender"/>
  35. </logger>
  36. <!--输出到elk的LOGSTASH-->
  37. <appender name="LOGSTASH" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
  38. <!-- 配置elk日志收集 配饰的是 LOGSTASH 的地址-->
  39. <destination>${LOGSTASH_SERVER}</destination>
  40. <encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder">
  41. <providers>
  42. <timestamp>
  43. <timeZone>UTC</timeZone>
  44. </timestamp>
  45. </providers>
  46. <!--自定义字段 区分项目-->
  47. <customFields>{"appName":"${APP_NAME}"}</customFields>
  48. </encoder>
  49. </appender>
  50. <root level="INFO">
  51. <appender-ref ref="CONSOLE"/>
  52. <appender-ref ref="FILE"/>
  53. <appender-ref ref="LOGSTASH"/>
  54. </root>
  55. </configuration>