SpringBoot——slf4j+logback日志处理及配置详解

x33g5p2x  于2022-02-07 转载在 Spring  
字(2.2k)|赞(0)|评价(0)|浏览(473)

SpringBoot——sl4j+logback日志处理及配置详解

日志的级别

打印级别:ALL > TRACE > FATAL > DEBUG > INFO > WARN > ERROR > OFF

输出级别:TRACE > DEBUG > INFO > WARN > ERROR

logback-spring.xml配置文件

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE configuration>
  3. <configuration scan="true">
  4. <include resource="org/springframework/boot/logging/logback/base.xml"/>
  5. <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  6. <!--如果只是想要 Info 级别的日志,只是过滤 info 还是会输出 Error 日志,因为 Error 的级别高,所以我们使用下面的策略,可以避免输出 Error 的日志-->
  7. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  8. <!--过滤 Error-->
  9. <level>ERROR</level>
  10. <!--匹配到就禁止-->
  11. <onMatch>DENY</onMatch>
  12. <!--没有匹配到就允许-->
  13. <onMismatch>ACCEPT</onMismatch>
  14. </filter>
  15. <!--日志名称,如果没有File 属性,那么只会使用FileNamePattern的文件路径规则
  16. 如果同时有<File>和<FileNamePattern>,那么当天日志是<File>,明天会自动把今天
  17. 的日志改名为今天的日期。即,<File> 的日志都是当天的。-->
  18. <File>logs/hdback.log</File>
  19. <!--滚动策略,按照时间滚动 TimeBasedRollingPolicy-->
  20. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  21. <!--文件路径,定义了日志的切分方式——把每一天的日志归档到一个文件中,以防止日志填满整个磁盘空间-->
  22. <fileNamePattern>logFile.%d{yyyy-MM-dd}.log</fileNamePattern>
  23. <!--只保留最近20天的日志-->
  24. <maxHistory>20</maxHistory>
  25. <!--用来指定日志文件的上限大小,那么到了这个值,就会删除旧的日志-->
  26. <!--<totalSizeCap>1GB</totalSizeCap>-->
  27. </rollingPolicy>
  28. <!--日志输出编码格式化-->
  29. <encoder>
  30. <charset>utf-8</charset>
  31. <Pattern>%d %-5level [%thread] %logger{0}: %msg%n</Pattern>
  32. </encoder>
  33. </appender>
  34. </configuration>

在application.yml/application.xml中的一般配置

logging.config= 日志配置文件的位置。例如,classpath:logback.xml。
logging.exception-conversion-word=%wEx 转换异常时使用的转换字。
logging.file= 设置保存日志的日志文件
logging.file.max-history=90 历史日志保存的最大天数
logging.file.max-size=10MB 设置日志文件最大大小
logging.level.*= 设置日志等级
logging.path= 日志文件的位置,例如/var/log
logging.pattern.console= 定义打印的日志格式
logging.pattern.dateformat=yyyy-MM-dd HH:mm:ss.SSS 设置日志日期格式
logging.pattern.file= 定义输出到日志文件的日志格式
logging.register-shutdown-hook=false 当初始化日志系统时,为其注册一个关闭钩子。

作为自己的笔记,也给有需要的朋友一个参考。

相关文章