logback.xml 9.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. <!-- Logback configuration. See http://logback.qos.ch/manual/index.html -->
  2. <configuration scan="true" scanPeriod="10 seconds">
  3. <!-- 监听器,指定日志文件存放目录 -->
  4. <contextListener class="regist.listener.CustomLogContextListener" />
  5. <!--设置系统日志目录-->
  6. <!-- <property name="LOG_PATH" value="D://logs/ali-regist-service" /> -->
  7. <!-- 彩色日志 -->
  8. <property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-(%d{yyyy-MM-dd HH:mm:ss.SSS}){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}}"/>
  9. <!-- 控制台输出 -->
  10. <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
  11. <file>${LOG_PATH}/log_info.log</file>
  12. <encoder>
  13. <Pattern>${CONSOLE_LOG_PATTERN}</Pattern>
  14. <charset>UTF-8</charset> <!-- 此处设置字符集 -->
  15. </encoder>
  16. <!--此日志appender是为开发使用,只配置最底级别,控制台输出的日志级别是大于或等于此级别的日志信息-->
  17. <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
  18. <level>info</level>
  19. </filter>
  20. </appender>
  21. <!-- 时间滚动输出 level为 DEBUG 日志 -->
  22. <appender name="DEBUG_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  23. <!-- 正在记录的日志文件的路径及文件名 -->
  24. <file>${LOG_PATH}/log_debug.log</file>
  25. <!--日志文件输出格式-->
  26. <encoder>
  27. <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
  28. <charset>UTF-8</charset> <!-- 此处设置字符集 -->
  29. </encoder>
  30. <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
  31. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  32. <!--
  33. 归档的日志文件的路径,例如今天是2017-04-26日志,当前写的日志文件路径为file节点指定,可以将此文件与file指定文件路径设置为不同路径,从而将当前日志文件或归档日志文件置不同的目录。
  34. 而2017-04-26的日志文件在由fileNamePattern指定。%d{yyyy-MM-dd}指定日期格式,%i指定索引
  35. -->
  36. <fileNamePattern>${LOG_PATH}/debug/log-debug-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
  37. <!--
  38. 除按日志记录之外,还配置了日志文件不能超过500M,若超过500M,日志文件会以索引0开始,
  39. 命名日志文件,例如log-error-2017-04-26.0.log
  40. -->
  41. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
  42. <maxFileSize>500MB</maxFileSize>
  43. </timeBasedFileNamingAndTriggeringPolicy>
  44. <!--日志文件保留天数-->
  45. <maxHistory>7</maxHistory>
  46. </rollingPolicy>
  47. <!-- 此日志文件只记录debug级别的 -->
  48. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  49. <level>debug</level>
  50. <onMatch>ACCEPT</onMatch>
  51. <onMismatch>DENY</onMismatch>
  52. </filter>
  53. </appender>
  54. <!-- 时间滚动输出 level为 INFO 日志 -->
  55. <appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  56. <!-- 正在记录的日志文件的路径及文件名 -->
  57. <file>${LOG_PATH}/log_info.log</file>
  58. <!--日志文件输出格式-->
  59. <encoder>
  60. <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
  61. <charset>UTF-8</charset> <!-- 此处设置字符集 -->
  62. </encoder>
  63. <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
  64. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  65. <!--
  66. 归档的日志文件的路径,例如今天是2017-04-26日志,当前写的日志文件路径为file节点指定,可以将此文件与file指定文件路径设置为不同路径,从而将当前日志文件或归档日志文件置不同的目录。
  67. 而2017-04-26的日志文件在由fileNamePattern指定。%d{yyyy-MM-dd}指定日期格式,%i指定索引
  68. -->
  69. <fileNamePattern>${LOG_PATH}/info/log-info-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
  70. <!--
  71. 除按日志记录之外,还配置了日志文件不能超过500M,若超过500M,日志文件会以索引0开始,
  72. 命名日志文件,例如log-error-2017-04-26.0.log
  73. -->
  74. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
  75. <maxFileSize>500MB</maxFileSize>
  76. </timeBasedFileNamingAndTriggeringPolicy>
  77. <!--日志文件保留天数-->
  78. <maxHistory>7</maxHistory>
  79. </rollingPolicy>
  80. <!-- 此日志文件只记录info级别的 -->
  81. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  82. <level>info</level>
  83. <onMatch>ACCEPT</onMatch>
  84. <onMismatch>DENY</onMismatch>
  85. </filter>
  86. </appender>
  87. <!-- 时间滚动输出 level为 WARN 日志 -->
  88. <appender name="WARN_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  89. <!-- 正在记录的日志文件的路径及文件名 -->
  90. <file>${LOG_PATH}/log_warn.log</file>
  91. <!--日志文件输出格式-->
  92. <encoder>
  93. <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
  94. <charset>UTF-8</charset> <!-- 此处设置字符集 -->
  95. </encoder>
  96. <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
  97. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  98. <!--
  99. 归档的日志文件的路径,例如今天是2017-04-26日志,当前写的日志文件路径为file节点指定,可以将此文件与file指定文件路径设置为不同路径,从而将当前日志文件或归档日志文件置不同的目录。
  100. 而2017-04-26的日志文件在由fileNamePattern指定。%d{yyyy-MM-dd}指定日期格式,%i指定索引
  101. -->
  102. <fileNamePattern>${LOG_PATH}/warn/log-warn-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
  103. <!--
  104. 除按日志记录之外,还配置了日志文件不能超过500M,若超过500M,日志文件会以索引0开始,
  105. 命名日志文件,例如log-error-2017-04-26.0.log
  106. -->
  107. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
  108. <maxFileSize>500MB</maxFileSize>
  109. </timeBasedFileNamingAndTriggeringPolicy>
  110. <!--日志文件保留天数-->
  111. <maxHistory>7</maxHistory>
  112. </rollingPolicy>
  113. <!-- 此日志文件只记录warn级别的 -->
  114. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  115. <level>warn</level>
  116. <onMatch>ACCEPT</onMatch>
  117. <onMismatch>DENY</onMismatch>
  118. </filter>
  119. </appender>
  120. <!-- 时间滚动输出 level为 ERROR 日志 -->
  121. <appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  122. <!-- 正在记录的日志文件的路径及文件名 -->
  123. <file>${LOG_PATH}/log_error.log</file>
  124. <!--日志文件输出格式-->
  125. <encoder>
  126. <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
  127. <charset>UTF-8</charset> <!-- 此处设置字符集 -->
  128. </encoder>
  129. <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
  130. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  131. <!--
  132. 归档的日志文件的路径,例如今天是2017-04-26日志,当前写的日志文件路径为file节点指定,可以将此文件与file指定文件路径设置为不同路径,从而将当前日志文件或归档日志文件置不同的目录。
  133. 而2017-04-26的日志文件在由fileNamePattern指定。%d{yyyy-MM-dd}指定日期格式,%i指定索引
  134. -->
  135. <fileNamePattern>${LOG_PATH}/error/log-error-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
  136. <!--
  137. 除按日志记录之外,还配置了日志文件不能超过500M,若超过500M,日志文件会以索引0开始,
  138. 命名日志文件,例如log-error-2017-04-26.0.log
  139. -->
  140. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
  141. <maxFileSize>500MB</maxFileSize>
  142. </timeBasedFileNamingAndTriggeringPolicy>
  143. <!--日志文件保留天数-->
  144. <maxHistory>7</maxHistory>
  145. </rollingPolicy>
  146. <!-- 此日志文件只记录ERROR级别的 -->
  147. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  148. <level>error</level>
  149. <onMatch>ACCEPT</onMatch>
  150. <onMismatch>DENY</onMismatch>
  151. </filter>
  152. </appender>
  153. <root level="debug">
  154. <appender-ref ref="CONSOLE" />
  155. <appender-ref ref="DEBUG_FILE" />
  156. <appender-ref ref="INFO_FILE" />
  157. <appender-ref ref="WARN_FILE" />
  158. <appender-ref ref="ERROR_FILE" />
  159. </root>
  160. </configuration>