logback-spring.xml 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <configuration scan="true" scanPeriod="60 seconds" debug="false">
  3. <contextName>logback</contextName>
  4. <property name="LOG_HOME" value="./logs/mobile"/>
  5. <springProperty scope="context" name="applicationName" source="spring.application.name" defaultValue="localhost" />
  6. <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
  7. <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
  8. <level>debug</level>
  9. </filter>
  10. <encoder>
  11. <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} >====> [${applicationName},%X{X-B3-TraceId:-},%X{X-B3-SpanId:-}] [%thread] %-5level %logger{50} - %msg%n</pattern>
  12. <charset>UTF-8</charset>
  13. </encoder>
  14. </appender>
  15. <!--2. 输出到文档-->
  16. <!-- 2.1 level为 DEBUG 日志,时间滚动输出 -->
  17. <appender name="DEBUG_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  18. <!-- 正在记录的日志文档的路径及文档名 -->
  19. <file>${LOG_HOME}/debug.log</file>
  20. <!--日志文档输出格式-->
  21. <encoder>
  22. <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} >====> [%thread] %-5level %logger{50} - %msg%n</pattern>
  23. <charset>UTF-8</charset> <!-- 设置字符集 -->
  24. </encoder>
  25. <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
  26. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  27. <!-- 日志归档 -->
  28. <fileNamePattern>${LOG_HOME}/%d{yyyy-MM, aux}/debug-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
  29. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
  30. <maxFileSize>100MB</maxFileSize>
  31. </timeBasedFileNamingAndTriggeringPolicy>
  32. <!--日志文档保留天数-->
  33. <maxHistory>15</maxHistory>
  34. </rollingPolicy>
  35. <!-- 此日志文档只记录debug级别的 -->
  36. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  37. <level>debug</level>
  38. <onMatch>ACCEPT</onMatch>
  39. <onMismatch>DENY</onMismatch>
  40. </filter>
  41. </appender>
  42. <!-- 2.2 level为 INFO 日志,时间滚动输出 -->
  43. <appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  44. <file>${LOG_HOME}/info.log</file>
  45. <encoder>
  46. <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} >====> [%thread] %-5level %logger{50} - %msg%n</pattern>
  47. <charset>UTF-8</charset>
  48. </encoder>
  49. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  50. <fileNamePattern>${LOG_HOME}/%d{yyyy-MM, aux}/info-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
  51. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
  52. <maxFileSize>100MB</maxFileSize>
  53. </timeBasedFileNamingAndTriggeringPolicy>
  54. <maxHistory>15</maxHistory>
  55. </rollingPolicy>
  56. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  57. <level>info</level>
  58. <onMatch>ACCEPT</onMatch>
  59. <onMismatch>DENY</onMismatch>
  60. </filter>
  61. </appender>
  62. <!-- 2.3 level为 WARN 日志,时间滚动输出 -->
  63. <appender name="WARN_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  64. <file>${LOG_HOME}/warn.log</file>
  65. <encoder>
  66. <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} >====> [%thread] %-5level %logger{50} - %msg%n</pattern>
  67. <charset>UTF-8</charset>
  68. </encoder>
  69. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  70. <fileNamePattern>${LOG_HOME}/%d{yyyy-MM, aux}/warn-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
  71. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
  72. <maxFileSize>100MB</maxFileSize>
  73. </timeBasedFileNamingAndTriggeringPolicy>
  74. <maxHistory>15</maxHistory>
  75. </rollingPolicy>
  76. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  77. <level>warn</level>
  78. <onMatch>ACCEPT</onMatch>
  79. <onMismatch>DENY</onMismatch>
  80. </filter>
  81. </appender>
  82. <appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  83. <file>${LOG_HOME}/error.log</file>
  84. <encoder>
  85. <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} >====> [%thread] %-5level %logger{50} - %msg%n</pattern>
  86. <charset>UTF-8</charset>
  87. </encoder>
  88. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  89. <fileNamePattern>${LOG_HOME}/%d{yyyy-MM, aux}/error-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
  90. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
  91. <maxFileSize>100MB</maxFileSize>
  92. </timeBasedFileNamingAndTriggeringPolicy>
  93. <maxHistory>15</maxHistory>
  94. </rollingPolicy>
  95. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  96. <level>ERROR</level>
  97. <onMatch>ACCEPT</onMatch>
  98. <onMismatch>DENY</onMismatch>
  99. </filter>
  100. </appender>
  101. <springProfile name="dev">
  102. <logger name="com.sdcm.pmp" level="debug"/>
  103. </springProfile>
  104. <root level="info">
  105. <appender-ref ref="CONSOLE"/>
  106. <appender-ref ref="DEBUG_FILE"/>
  107. <appender-ref ref="INFO_FILE"/>
  108. <appender-ref ref="WARN_FILE"/>
  109. <appender-ref ref="ERROR_FILE"/>
  110. </root>
  111. </configuration>