当前位置:   article > 正文

logback日志详细配置_logback %d

logback %d
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- 日志级别从低到高分为OFF < TRACE < DEBUG < INFO < WARN < ERROR < FATA < ALL,如果设置为WARN,则低于WARN的信息都不会输出 -->
  3. <!-- scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true -->
  4. <!-- scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟 -->
  5. <!-- debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false -->
  6. <!--scan="true" 启动动态刷新,scanPeriod="10 seconds" 刷新频率 10s每次,seconds" debug="true" 开启动态刷新日志,有变动会触发日志-->
  7. <configuration scan="true" scanPeriod="10 seconds" debug="true">
  8. <!-- 控制台彩色日志格式 -->
  9. <property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%clr(%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}}"/>
  10. <!-- 日志格式 -->
  11. <property name="LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n"/>
  12. <!-- 彩色日志依赖的渲染类 -->
  13. <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter"/>
  14. <conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter"/>
  15. <conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter"/>
  16. <!--输出到控制台-->
  17. <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
  18. <!--此日志appender是为开发使用,只配置最底级别,控制台输出的日志级别是大于或等于此级别的日志信息-->
  19. <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
  20. <level>ALL</level>
  21. </filter>
  22. <encoder>
  23. <pattern>${CONSOLE_LOG_PATTERN}</pattern>
  24. <charset>UTF-8</charset>
  25. </encoder>
  26. </appender>
  27. <!--时间滚动输出level为trace日志到文件-->
  28. <appender name="TRACE_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  29. <file>${LOG_PATH:-./logs}/trace.log</file>
  30. <encoder>
  31. <pattern>${LOG_PATTERN}</pattern>
  32. <charset>UTF-8</charset>
  33. </encoder>
  34. <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
  35. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  36. <!-- 日志归档 -->
  37. <fileNamePattern>${LOG_PATH:-./logs}/trace/trace-%d{yyyy-MM-dd}-%i.log</fileNamePattern>
  38. <!-- 单个文件最大100M -->
  39. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
  40. <maxFileSize>100MB</maxFileSize>
  41. </timeBasedFileNamingAndTriggeringPolicy>
  42. <!--保留日志天数,不包括今天-->
  43. <maxHistory>100</maxHistory>
  44. <!--是否在启动的时候删除保留日志天数之前的历史日志-->
  45. <cleanHistoryOnStart>true</cleanHistoryOnStart>
  46. </rollingPolicy>
  47. <!-- 此日志文件只记录debug级别的 -->
  48. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  49. <level>trace</level>
  50. <onMatch>ACCEPT</onMatch>
  51. <onMismatch>DENY</onMismatch>
  52. </filter>
  53. </appender>
  54. <!--时间滚动输出level为DEBUG日志到文件-->
  55. <appender name="DEBUG_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  56. <file>${LOG_PATH:-./logs}/debug.log</file>
  57. <encoder>
  58. <pattern>${LOG_PATTERN}</pattern>
  59. <charset>UTF-8</charset>
  60. </encoder>
  61. <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
  62. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  63. <!-- 日志归档 -->
  64. <fileNamePattern>${LOG_PATH:-./logs}/debug/debug-%d{yyyy-MM-dd}-%i.log</fileNamePattern>
  65. <!-- 单个文件最大100M -->
  66. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
  67. <maxFileSize>100MB</maxFileSize>
  68. </timeBasedFileNamingAndTriggeringPolicy>
  69. <!--保留日志天数,不包括今天-->
  70. <maxHistory>100</maxHistory>
  71. <!--是否在启动的时候删除保留日志天数之前的历史日志-->
  72. <cleanHistoryOnStart>true</cleanHistoryOnStart>
  73. </rollingPolicy>
  74. <!-- 此日志文件只记录debug级别的 -->
  75. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  76. <level>debug</level>
  77. <onMatch>ACCEPT</onMatch>
  78. <onMismatch>DENY</onMismatch>
  79. </filter>
  80. </appender>
  81. <!-- 时间滚动输出level为INFO日志 -->
  82. <appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  83. <file>${LOG_PATH:-./logs}/info.log</file>
  84. <encoder>
  85. <pattern>${LOG_PATTERN}</pattern>
  86. <charset>UTF-8</charset>
  87. </encoder>
  88. <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
  89. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  90. <!-- 每天日志归档路径以及格式 -->
  91. <fileNamePattern>${LOG_PATH:-./logs}/info/info-%d{yyyy-MM-dd}-%i.log</fileNamePattern>
  92. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
  93. <maxFileSize>100MB</maxFileSize>
  94. </timeBasedFileNamingAndTriggeringPolicy>
  95. <!--保留日志天数,不包括今天-->
  96. <maxHistory>100</maxHistory>
  97. <!--是否在启动的时候删除保留日志天数之前的历史日志-->
  98. <cleanHistoryOnStart>true</cleanHistoryOnStart>
  99. </rollingPolicy>
  100. <!-- 此日志文件只记录info级别的 -->
  101. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  102. <level>info</level>
  103. <onMatch>ACCEPT</onMatch>
  104. <onMismatch>DENY</onMismatch>
  105. </filter>
  106. </appender>
  107. <!-- 时间滚动输出level为WARN日志 -->
  108. <appender name="WARN_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  109. <file>${LOG_PATH:-./logs}/warn.log</file>
  110. <encoder>
  111. <pattern>${LOG_PATTERN}</pattern>
  112. <charset>UTF-8</charset>
  113. </encoder>
  114. <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
  115. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  116. <fileNamePattern>${LOG_PATH:-./logs}/warn/warn-%d{yyyy-MM-dd}-%i.log</fileNamePattern>
  117. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
  118. <maxFileSize>100MB</maxFileSize>
  119. </timeBasedFileNamingAndTriggeringPolicy>
  120. <!--保留日志天数,不包括今天-->
  121. <maxHistory>100</maxHistory>
  122. <!--是否在启动的时候删除保留日志天数之前的历史日志-->
  123. <cleanHistoryOnStart>true</cleanHistoryOnStart>
  124. </rollingPolicy>
  125. <!-- 此日志文件只记录warn级别的 -->
  126. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  127. <level>warn</level>
  128. <onMatch>ACCEPT</onMatch>
  129. <onMismatch>DENY</onMismatch>
  130. </filter>
  131. </appender>
  132. <!-- 时间滚动输出level为ERROR日志 -->
  133. <appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  134. <file>${LOG_PATH:-./logs}/error.log</file>
  135. <encoder>
  136. <pattern>${LOG_PATTERN}</pattern>
  137. <charset>UTF-8</charset>
  138. </encoder>
  139. <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
  140. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  141. <fileNamePattern>${LOG_PATH:-./logs}/error/error-%d{yyyy-MM-dd}-%i.log</fileNamePattern>
  142. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
  143. <maxFileSize>100MB</maxFileSize>
  144. </timeBasedFileNamingAndTriggeringPolicy>
  145. <!--保留日志天数,不包括今天-->
  146. <maxHistory>100</maxHistory>
  147. <!--是否在启动的时候删除保留日志天数之前的历史日志-->
  148. <cleanHistoryOnStart>true</cleanHistoryOnStart>
  149. </rollingPolicy>
  150. <!-- 此日志文件只记录ERROR级别的 -->
  151. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  152. <level>error</level>
  153. <onMatch>ACCEPT</onMatch>
  154. <onMismatch>DENY</onMismatch>
  155. </filter>
  156. </appender>
  157. <!-- 时间滚动输出level为FATAL日志 -->
  158. <appender name="FATAL_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  159. <file>${LOG_PATH:-./logs}/fatal.log</file>
  160. <encoder>
  161. <pattern>${LOG_PATTERN}</pattern>
  162. <charset>UTF-8</charset>
  163. </encoder>
  164. <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
  165. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  166. <fileNamePattern>${LOG_PATH:-./logs}/fatal/fatal-%d{yyyy-MM-dd}-%i.log</fileNamePattern>
  167. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
  168. <maxFileSize>100MB</maxFileSize>
  169. </timeBasedFileNamingAndTriggeringPolicy>
  170. <!--保留日志天数,不包括今天-->
  171. <maxHistory>100</maxHistory>
  172. <!--是否在启动的时候删除保留日志天数之前的历史日志-->
  173. <cleanHistoryOnStart>true</cleanHistoryOnStart>
  174. </rollingPolicy>
  175. <!-- 此日志文件只记录TATAL级别的 -->
  176. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  177. <level>fatal</level>
  178. <onMatch>ACCEPT</onMatch>
  179. <onMismatch>DENY</onMismatch>
  180. </filter>
  181. </appender>
  182. <!--此配置优先级 appender>logger>root-->
  183. <!-- <logger name="com.example.demo.MyController" level="trace"/>-->
  184. <!--开发和测试使用的日志级别-->
  185. <springProfile name="dev,test">
  186. <root level="DEBUG">
  187. <appender-ref ref="CONSOLE"/>
  188. <appender-ref ref="TRACE_FILE"/>
  189. <appender-ref ref="DEBUG_FILE"/>
  190. <appender-ref ref="INFO_FILE"/>
  191. <appender-ref ref="WARN_FILE"/>
  192. <appender-ref ref="ERROR_FILE"/>
  193. <appender-ref ref="FATAL_FILE"/>
  194. </root>
  195. </springProfile>
  196. <!--生产环境使用的日志级别-->
  197. <springProfile name="prod">
  198. <root level="INFO">
  199. <appender-ref ref="INFO_FILE"/>
  200. <appender-ref ref="WARN_FILE"/>
  201. <appender-ref ref="ERROR_FILE"/>
  202. <appender-ref ref="FATAL_FILE"/>
  203. </root>
  204. </springProfile>
  205. </configuration>

日志会生成与src同级别的目录logs里面

打成jar包后运行,日志目录跟jar所在目录下生成logs文件夹,里面就是日志(在jar目录运行启动jar包)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/163318
推荐阅读
相关标签
  

闽ICP备14008679号