log4j2.xml 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <configuration status="info" monitorInterval="30">
  3. <properties>
  4. <!-- 格式化输出:%date表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度 %msg:日志消息,%n是换行符 -->
  5. <!-- %logger{36} 表示 Logger 名字最长36个字符 -->
  6. <property name="LOG_PATTERN"
  7. value="%clr{%d{yyyy-MM-dd HH:mm:ss.SSS}}{faint} %X{traceId} %clr{%5p} %clr{${sys:PID}}{magenta} %clr{---}{faint} %clr{[%t]}{faint} %clr{%c{1.}}{cyan} %clr{:}{faint} %m%n%xwEx"/>
  8. <property name="LOG_WITHOUT_COLOR_PATTERN"
  9. value="%d{yyyy-MM-dd HH:mm:ss.SSS} %5p %X{traceId} ${sys:PID}--- [%t] %c{1.} : %m%n%xwEx"/>
  10. <property name="LOG_PATH" value="logs/sckw-ng-transport"/>
  11. </properties>
  12. <!--DEBUG<INFO<WARNING<ERROR<CRITICAL-->
  13. <!-- 先定义所有的appender(附加器)-->
  14. <appenders>
  15. <!-- 输出控制台的配置 -->
  16. <Console name="Console" target="SYSTEM_OUT">
  17. <!-- 输出日志的格式 -->
  18. <PatternLayout pattern="${LOG_PATTERN}"/>
  19. </Console>
  20. <!--all级别日志-->
  21. <RollingFile name="allFileAppender"
  22. fileName="${LOG_PATH}/all.log"
  23. filePattern="${LOG_PATH}/$${date:yyyy-MM}/all-%d{yyyy-MM-dd}-%i.log.gz">
  24. <PatternLayout pattern="${LOG_WITHOUT_COLOR_PATTERN}"/>
  25. <Policies>
  26. <!-- 设置日志文件切分参数 -->
  27. <!--<OnStartupTriggeringPolicy/>-->
  28. <!--设置日志基础文件大小,超过该大小就触发日志文件滚动更新-->
  29. <SizeBasedTriggeringPolicy size="100MB"/>
  30. <!--设置日志文件滚动更新的时间,依赖于文件命名filePattern的设置-->
  31. <TimeBasedTriggeringPolicy/>
  32. </Policies>
  33. <!--设置日志的文件个数上限,不设置默认为7个,超过大小后会被覆盖;依赖于filePattern中的%i-->
  34. <DefaultRolloverStrategy max="100"/>
  35. </RollingFile>
  36. <!--debug级别日志-->
  37. <RollingFile name="debugFileAppender"
  38. fileName="${LOG_PATH}/debug.log"
  39. filePattern="${LOG_PATH}/$${date:yyyy-MM}/debug-%d{yyyy-MM-dd}-%i.log.gz">
  40. <Filters>
  41. <!--过滤掉info及更高级别日志-->
  42. <ThresholdFilter level="info" onMatch="DENY" onMismatch="NEUTRAL"/>
  43. </Filters>
  44. <!--设置日志格式-->
  45. <PatternLayout pattern="${LOG_WITHOUT_COLOR_PATTERN}"/>
  46. <Policies>
  47. <!-- 设置日志文件切分参数 -->
  48. <!--<OnStartupTriggeringPolicy/>-->
  49. <!--设置日志基础文件大小,超过该大小就触发日志文件滚动更新-->
  50. <SizeBasedTriggeringPolicy size="100MB"/>
  51. <!--设置日志文件滚动更新的时间,依赖于文件命名filePattern的设置-->
  52. <TimeBasedTriggeringPolicy/>
  53. </Policies>
  54. <!--设置日志的文件个数上限,不设置默认为7个,超过大小后会被覆盖;依赖于filePattern中的%i-->
  55. <DefaultRolloverStrategy max="100"/>
  56. </RollingFile>
  57. <!--info级别日志-->
  58. <RollingFile name="infoFileAppender"
  59. fileName="${LOG_PATH}/info.log"
  60. filePattern="${LOG_PATH}/$${date:yyyy-MM}/info-%d{yyyy-MM-dd}-%i.log.gz">
  61. <Filters>
  62. <!--过滤掉warn及更高级别日志-->
  63. <ThresholdFilter level="warn" onMatch="DENY" onMismatch="NEUTRAL"/>
  64. </Filters>
  65. <!--设置日志格式-->
  66. <PatternLayout pattern="${LOG_WITHOUT_COLOR_PATTERN}"/>
  67. <Policies>
  68. <!-- 设置日志文件切分参数 -->
  69. <!--<OnStartupTriggeringPolicy/>-->
  70. <!--设置日志基础文件大小,超过该大小就触发日志文件滚动更新-->
  71. <SizeBasedTriggeringPolicy size="100MB"/>
  72. <!--设置日志文件滚动更新的时间,依赖于文件命名filePattern的设置-->
  73. <TimeBasedTriggeringPolicy interval="1" modulate="true"/>
  74. </Policies>
  75. <!--设置日志的文件个数上限,不设置默认为7个,超过大小后会被覆盖;依赖于filePattern中的%i-->
  76. <!--<DefaultRolloverStrategy max="100"/>-->
  77. </RollingFile>
  78. <!--warn级别日志-->
  79. <RollingFile name="warnFileAppender"
  80. fileName="${LOG_PATH}/warn.log"
  81. filePattern="${LOG_PATH}/$${date:yyyy-MM}/warn-%d{yyyy-MM-dd}-%i.log.gz">
  82. <Filters>
  83. <!--过滤掉error及更高级别日志-->
  84. <ThresholdFilter level="error" onMatch="DENY" onMismatch="NEUTRAL"/>
  85. </Filters>
  86. <!--设置日志格式-->
  87. <PatternLayout pattern="${LOG_WITHOUT_COLOR_PATTERN}"/>
  88. <Policies>
  89. <!-- 设置日志文件切分参数 -->
  90. <!--<OnStartupTriggeringPolicy/>-->
  91. <!--设置日志基础文件大小,超过该大小就触发日志文件滚动更新-->
  92. <SizeBasedTriggeringPolicy size="100MB"/>
  93. <!--设置日志文件滚动更新的时间,依赖于文件命名filePattern的设置-->
  94. <TimeBasedTriggeringPolicy/>
  95. </Policies>
  96. <!--设置日志的文件个数上限,不设置默认为7个,超过大小后会被覆盖;依赖于filePattern中的%i-->
  97. <DefaultRolloverStrategy max="100"/>
  98. </RollingFile>
  99. <!--error及更高级别日志-->
  100. <RollingFile name="errorFileAppender"
  101. fileName="${LOG_PATH}/error.log"
  102. filePattern="${LOG_PATH}/$${date:yyyy-MM}/error-%d{yyyy-MM-dd}-%i.log.gz">
  103. <!--设置日志格式-->
  104. <PatternLayout pattern="${LOG_WITHOUT_COLOR_PATTERN}"/>
  105. <Policies>
  106. <!-- 设置日志文件切分参数 -->
  107. <!--<OnStartupTriggeringPolicy/>-->
  108. <!--设置日志基础文件大小,超过该大小就触发日志文件滚动更新-->
  109. <SizeBasedTriggeringPolicy size="100MB"/>
  110. <!--设置日志文件滚动更新的时间,依赖于文件命名filePattern的设置-->
  111. <TimeBasedTriggeringPolicy/>
  112. </Policies>
  113. <!--设置日志的文件个数上限,不设置默认为7个,超过大小后会被覆盖;依赖于filePattern中的%i-->
  114. <DefaultRolloverStrategy max="100"/>
  115. </RollingFile>
  116. <!--json格式error级别日志-->
  117. <RollingFile name="errorJsonAppender"
  118. fileName="${LOG_PATH}/error-json.log"
  119. filePattern="${LOG_PATH}/$${date:yyyy-MM}/error-json-%d{yyyy-MM-dd}-%i.log.gz">
  120. <JSONLayout compact="true" eventEol="true" locationInfo="true"/>
  121. <Policies>
  122. <SizeBasedTriggeringPolicy size="100 MB"/>
  123. <TimeBasedTriggeringPolicy interval="1" modulate="true"/>
  124. </Policies>
  125. </RollingFile>
  126. </appenders>
  127. <loggers>
  128. <root level="debug">
  129. <AppenderRef ref="allFileAppender" level="all"/>
  130. <AppenderRef ref="debugFileAppender" level="debug"/>
  131. <AppenderRef ref="infoFileAppender" level="info"/>
  132. <AppenderRef ref="warnFileAppender" level="warn"/>
  133. <AppenderRef ref="errorFileAppender" level="error"/>
  134. <AppenderRef ref="errorJsonAppender" level="error"/>
  135. <appender-ref ref="Console" level="info"/>
  136. </root>
  137. <Logger name="org.springframework" level="info"/>
  138. <Logger name="com.alibaba" level="info"/>
  139. <Logger name="com.baomidou" level="info"/>
  140. </loggers>
  141. </configuration>