logback.xml 3.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <configuration>
  3. <!-- 日志存放路径 -->
  4. <property name="log.path" value="${LOG_PATH:-.}"/>
  5. <!-- 日志输出格式 -->
  6. <property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" />
  7. <!-- 控制台输出 -->
  8. <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
  9. <encoder>
  10. <pattern>${log.pattern}</pattern>
  11. </encoder>
  12. </appender>
  13. <!-- 系统日志输出 -->
  14. <appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender">
  15. <file>${log.path}/admin-info.log</file>
  16. <!-- 循环政策:基于时间创建日志文件 -->
  17. <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
  18. <!-- 日志文件名格式 -->
  19. <fileNamePattern>${log.path}/admin-info.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
  20. <!-- 单文件上限200MB,超出自动切新文件 -->
  21. <maxFileSize>200MB</maxFileSize>
  22. <!-- 保留7天 -->
  23. <maxHistory>7</maxHistory>
  24. <!-- 所有归档总大小上限15GB,超出删最旧的 -->
  25. <totalSizeCap>15GB</totalSizeCap>
  26. </rollingPolicy>
  27. <encoder>
  28. <pattern>${log.pattern}</pattern>
  29. </encoder>
  30. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  31. <!-- 过滤的级别 -->
  32. <level>INFO</level>
  33. <!-- 匹配时的操作:接收(记录) -->
  34. <onMatch>ACCEPT</onMatch>
  35. <!-- 不匹配时的操作:拒绝(不记录) -->
  36. <onMismatch>DENY</onMismatch>
  37. </filter>
  38. </appender>
  39. <appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender">
  40. <file>${log.path}/admin-error.log</file>
  41. <!-- 循环政策:基于时间创建日志文件 -->
  42. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  43. <!-- 日志文件名格式 -->
  44. <fileNamePattern>${log.path}/admin-error.%d{yyyy-MM-dd}.log</fileNamePattern>
  45. <!-- 日志最大的历史 60天 -->
  46. <maxHistory>60</maxHistory>
  47. </rollingPolicy>
  48. <encoder>
  49. <pattern>${log.pattern}</pattern>
  50. </encoder>
  51. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  52. <!-- 过滤的级别 -->
  53. <level>ERROR</level>
  54. <!-- 匹配时的操作:接收(记录) -->
  55. <onMatch>ACCEPT</onMatch>
  56. <!-- 不匹配时的操作:拒绝(不记录) -->
  57. <onMismatch>DENY</onMismatch>
  58. </filter>
  59. </appender>
  60. <!-- 用户访问日志输出 -->
  61. <appender name="sys-user" class="ch.qos.logback.core.rolling.RollingFileAppender">
  62. <file>${log.path}/admin-user.log</file>
  63. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  64. <!-- 按天回滚 daily -->
  65. <fileNamePattern>${log.path}/admin-user.%d{yyyy-MM-dd}.log</fileNamePattern>
  66. <!-- 日志最大的历史 60天 -->
  67. <maxHistory>60</maxHistory>
  68. </rollingPolicy>
  69. <encoder>
  70. <pattern>${log.pattern}</pattern>
  71. </encoder>
  72. </appender>
  73. <!-- 系统模块日志级别控制 -->
  74. <logger name="com.dgtly" level="info" />
  75. <!-- Spring日志级别控制 -->
  76. <logger name="org.springframework" level="warn" />
  77. <root level="info">
  78. <appender-ref ref="console" />
  79. </root>
  80. <!--系统操作日志-->
  81. <root level="info">
  82. <appender-ref ref="file_info" />
  83. <appender-ref ref="file_error" />
  84. </root>
  85. <!--系统用户操作日志-->
  86. <logger name="sys-user" level="info">
  87. <appender-ref ref="sys-user"/>
  88. </logger>
  89. </configuration>