SpringBoot Logback

logback.xml
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <configuration>
  3. <!-- 日志存放路径 -->
  4. <property name="log.path" value="logs" />
  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}/sys-info.log</file>
  16. <!-- 循环政策:基于时间创建日志文件 -->
  17. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  18. <!-- 日志文件名格式 -->
  19. <fileNamePattern>${log.path}/sys-info.%d{yyyy-MM-dd}.log</fileNamePattern>
  20. <!-- 日志最大的历史 60天 -->
  21. <maxHistory>60</maxHistory>
  22. </rollingPolicy>
  23. <encoder>
  24. <pattern>${log.pattern}</pattern>
  25. </encoder>
  26. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  27. <!-- 过滤的级别 -->
  28. <level>INFO</level>
  29. <!-- 匹配时的操作:接收(记录) -->
  30. <onMatch>ACCEPT</onMatch>
  31. <!-- 不匹配时的操作:拒绝(不记录) -->
  32. <onMismatch>DENY</onMismatch>
  33. </filter>
  34. </appender>
  35. <appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender">
  36. <file>${log.path}/sys-error.log</file>
  37. <!-- 循环政策:基于时间创建日志文件 -->
  38. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  39. <!-- 日志文件名格式 -->
  40. <fileNamePattern>${log.path}/sys-error.%d{yyyy-MM-dd}.log</fileNamePattern>
  41. <!-- 日志最大的历史 60天 -->
  42. <maxHistory>60</maxHistory>
  43. </rollingPolicy>
  44. <encoder>
  45. <pattern>${log.pattern}</pattern>
  46. </encoder>
  47. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  48. <!-- 过滤的级别 -->
  49. <level>ERROR</level>
  50. <!-- 匹配时的操作:接收(记录) -->
  51. <onMatch>ACCEPT</onMatch>
  52. <!-- 不匹配时的操作:拒绝(不记录) -->
  53. <onMismatch>DENY</onMismatch>
  54. </filter>
  55. </appender>
  56. <!-- 用户访问日志输出 -->
  57. <appender name="sys-user" class="ch.qos.logback.core.rolling.RollingFileAppender">
  58. <file>${log.path}/sys-user.log</file>
  59. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  60. <!-- 按天回滚 daily -->
  61. <fileNamePattern>${log.path}/sys-user.%d{yyyy-MM-dd}.log</fileNamePattern>
  62. <!-- 日志最大的历史 60天 -->
  63. <maxHistory>60</maxHistory>
  64. </rollingPolicy>
  65. <encoder>
  66. <pattern>${log.pattern}</pattern>
  67. </encoder>
  68. </appender>
  69. <!-- 系统模块日志级别控制 -->
  70. <logger name="com.cug" level="info" />
  71. <!-- Spring日志级别控制 -->
  72. <logger name="org.springframework" level="warn" />
  73. <root level="info">
  74. <appender-ref ref="console" />
  75. </root>
  76. <!--系统操作日志-->
  77. <root level="info">
  78. <appender-ref ref="file_info" />
  79. <appender-ref ref="file_error" />
  80. </root>
  81. <!--系统用户操作日志-->
  82. <logger name="sys-user" level="info">
  83. <appender-ref ref="sys-user"/>
  84. </logger>
  85. </configuration>

application.yml
  1. # 日志配置
  2. logging:
  3. level:
  4. com.cug: debug
  5. org.springframework: warn