logback.xml 3.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <!-- Logback configuration. See http://logback.qos.ch/manual/index.html -->
  2. <configuration scan="true" scanPeriod="2 seconds">
  3. <!-- 通用属性 -->
  4. <property name="LOG_PATH" value="../logs" />
  5. <property name="LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n"/>
  6. <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
  7. <!-- 日志输出编码 -->
  8. <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
  9. <encoder>
  10. <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
  11. <charset>UTF-8</charset>
  12. </encoder>
  13. </appender>
  14. <appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  15. <File>logs/info.log</File>
  16. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  17. <fileNamePattern>logs/info-%d{yyyyMMdd}.log.%i</fileNamePattern>
  18. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
  19. <maxFileSize>500MB</maxFileSize>
  20. </timeBasedFileNamingAndTriggeringPolicy>
  21. <maxHistory>2</maxHistory>
  22. </rollingPolicy>
  23. <layout class="ch.qos.logback.classic.PatternLayout">
  24. <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} -%msg%n
  25. </Pattern>
  26. </layout>
  27. </appender>
  28. <appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  29. <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
  30. <level>ERROR</level>
  31. </filter>
  32. <File>logs/error.log</File>
  33. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  34. <fileNamePattern>logs/error-%d{yyyyMMdd}.log.%i
  35. </fileNamePattern>
  36. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
  37. <maxFileSize>500MB</maxFileSize>
  38. </timeBasedFileNamingAndTriggeringPolicy>
  39. <maxHistory>2</maxHistory>
  40. </rollingPolicy>
  41. <layout class="ch.qos.logback.classic.PatternLayout">
  42. <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} -%msg%n
  43. </Pattern>
  44. </layout>
  45. </appender>
  46. <!-- 操作日志文件 -->
  47. <appender name="OPERATION_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  48. <file>${LOG_PATH}/operation.log</file>
  49. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  50. <fileNamePattern>${LOG_PATH}/operation.%d{yyyy-MM-dd}.log</fileNamePattern>
  51. <maxHistory>30</maxHistory>
  52. </rollingPolicy>
  53. <encoder>
  54. <pattern>${LOG_PATTERN}</pattern>
  55. </encoder>
  56. </appender>
  57. <logger name="com.ibatis" level="INFO" />
  58. <logger name="com.ibatis.common.jdbc.SimpleDataSource" level="INFO" />
  59. <logger name="com.ibatis.common.jdbc.ScriptRunner" level="INFO" />
  60. <logger name="com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate" level="INFO" />
  61. <logger name="java.sql.Connection" level="INFO" />
  62. <logger name="java.sql.Statement" level="INFO" />
  63. <logger name="java.sql.PreparedStatement" level="INFO" />
  64. <logger name="me.chanjar.weixin.cp.api.impl.BaseWxCpServiceImpl" level="OFF" />
  65. <logger name="me.chanjar.weixin.common.error.WxErrorException" level="OFF" />
  66. <!-- 操作日志记录器 -->
  67. <logger name="OPERATION_LOGGER" level="INFO" additivity="false">
  68. <appender-ref ref="OPERATION_FILE"/>
  69. </logger>
  70. <root level="INFO">
  71. <appender-ref ref="INFO_FILE" />
  72. <appender-ref ref="ERROR_FILE" />
  73. <appender-ref ref="STDOUT" />
  74. </root>
  75. </configuration>