You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

121 lines
5.9 KiB

3 years ago
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. springProfile: 使用此元素, 日志配置文件名必须使用logback-spring.xml
  4. scan: 当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。
  5. scanPeriod: 设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。
  6. 当scan为true时,此属性生效。默认的时间间隔为1分钟。
  7. debug: 当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false
  8. -->
  9. <configuration scan="false" scanPeriod="60 seconds" debug="false">
  10. <include resource="org/springframework/boot/logging/logback/defaults.xml" />
  11. <contextName>LoggerConfig</contextName>
  12. <property name="PATH.ROOT" value="./logs" />
  13. <!--<property>用来定义变量值,定义的值会被插入到logger上下文中,可以使“${}”来使用变量。-->
  14. <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
  15. <!-- encoder 默认配置为PatternLayoutEncoder -->
  16. <encoder>
  17. <pattern>${STDOUT_PATTERN:-%clr(%d{${LOG_DATEFORMAT_PATTERN:-HH:mm:ss.SSS}}){faint} [%clr(${LOG_LEVEL_PATTERN:-%5p})] [%clr(${PID:- }){magenta}] %clr([%1.15t]){faint} %clr(%-40.40logger{32}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}</pattern>
  18. </encoder>
  19. </appender>
  20. <appender name="FILE_INFO" class="ch.qos.logback.core.rolling.RollingFileAppender">
  21. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  22. <!--日志文件输出的文件名-->
  23. <FileNamePattern>${PATH.ROOT}/info/%d{yyyy-MM-dd}.log</FileNamePattern>
  24. <!--日志文件保留天数-->
  25. <MaxHistory>30</MaxHistory>
  26. </rollingPolicy>
  27. <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
  28. <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
  29. <pattern>%d{HH:mm:ss} [%thread] %-3level %logger{50} - %msg%n</pattern>
  30. </encoder>
  31. <!--日志级别过滤-->
  32. <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
  33. <level>INFO</level>
  34. </filter>
  35. <!--日志文件最大的大小-->
  36. <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
  37. <MaxFileSize>30MB</MaxFileSize>
  38. </triggeringPolicy>
  39. </appender>
  40. <appender name="FILE_ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender">
  41. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  42. <!--日志文件输出的文件名-->
  43. <FileNamePattern>${PATH.ROOT}/error/%d{yyyy-MM-dd}.log</FileNamePattern>
  44. <!--日志文件保留天数-->
  45. <MaxHistory>30</MaxHistory>
  46. </rollingPolicy>
  47. <!--日志级别过滤-->
  48. <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
  49. <level>ERROR</level>
  50. </filter>
  51. <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
  52. <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
  53. <pattern>%d{HH:mm:ss} [%thread] %-3level %logger{50} - %msg%n</pattern>
  54. </encoder>
  55. <!--日志文件最大的大小-->
  56. <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
  57. <MaxFileSize>30MB</MaxFileSize>
  58. </triggeringPolicy>
  59. </appender>
  60. <logger level="warn" name="org.springframework.context.support.PostProcessorRegistrationDelegate">
  61. <appender-ref ref="STDOUT" />
  62. </logger>
  63. <!--spring 启动异常日志分析-->
  64. <logger level="debug" name="org.springframework.boot.diagnostics">
  65. <appender-ref ref="STDOUT" />
  66. </logger>
  67. <!--开发环境日志输出级别配置-->
  68. <springProfile name="dev">
  69. <logger level="debug" name="com.iteaj.framework" additivity="false">
  70. <appender-ref ref="STDOUT" />
  71. </logger>
  72. <logger level="debug" name="com.iteaj.iboot" additivity="false">
  73. <appender-ref ref="STDOUT" />
  74. </logger>
  75. <!-- 打印下线事件日志 -->
  76. <logger level="debug" name="com.iteaj.iot.server.handle.EventManagerHandler" additivity="false">
  77. <appender-ref ref="STDOUT" />
  78. </logger>
  79. <!-- 打印服务端写出到设备的十六进制报文(TCP协议) -->
  80. <!-- <logger level="trace" name="com.iteaj.iot.server.codec.DeviceProtocolEncoder" additivity="false">-->
  81. <!-- <appender-ref ref="STDOUT" />-->
  82. <!-- </logger>-->
  83. <!-- 打印服务端写出到设备的十六进制报文(UDP协议) -->
  84. <!-- <logger level="trace" name="com.iteaj.iot.server.codec.UdpServerProtocolEncoder" additivity="false">-->
  85. <!-- <appender-ref ref="STDOUT" />-->
  86. <!-- </logger>-->
  87. <logger level="info" name="org.springframework" additivity="false">
  88. <appender-ref ref="STDOUT" />
  89. </logger>
  90. <root level="info">
  91. <appender-ref ref="STDOUT" />
  92. </root>
  93. </springProfile>
  94. <springProfile name="test">
  95. <logger level="debug" name="com.iteaj" additivity="false">
  96. <appender-ref ref="STDOUT" />
  97. <appender-ref ref="FILE_INFO" />
  98. </logger>
  99. <root level="info">
  100. <appender-ref ref="STDOUT" />
  101. <appender-ref ref="FILE_INFO" />
  102. </root>
  103. </springProfile>
  104. <springProfile name="prod">
  105. <logger level="info" name="com.iteaj" additivity="false">
  106. <appender-ref ref="STDOUT" />
  107. <appender-ref ref="FILE_INFO" />
  108. </logger>
  109. <root level="warn">
  110. <appender-ref ref="STDOUT" />
  111. <appender-ref ref="FILE_ERROR" />
  112. </root>
  113. </springProfile>
  114. </configuration>