Spring boot 整合Logback过程示例解析

2023-02-13 12:02:27 示例 整合 解析

前言

我们通常使用Spring Boot项目搭建的基础框架,必然少不了它的内置日志框架Logback,在spring-boot-starter的jar包下面包含了spring-boot-starter-logging包,该包就是内置的日志框架Logback。

默认Logback配置

我们在启动Spring boot项目的时候会发现,没有配置任何Log和日志打印的文件,控制台却输出了日志,这是源于logback的base.xml里面默认的root日志级别为INFO

在Logback里面默认的日志输出级别有三种WARN、INFO、DEBUG,在项目启动的时候选择Debug模式来启动,控制台会输出Debug级别日志。

自定义Logback文件

在项目的src/main/resources创建logback.xml文件,这里文件创建的命名规范官方给的推荐最好为logback-spring.xml,spring boot 的application.yml可以为它添加特有的配置项。

现在我们来看自定义logback文件的配置

首先是根节点的配置

  • scan : 当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。
  • scanPeriod : 设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。

和都是子节点

Appender用来格式化日志输出节点,有两个属性name和class,class用来指定哪种输出策略,常用就是控制台输出策略和文件输出策略。 同时可以指定日志文件的输出名、保留天数、文件大小、以及打印的日志级别。 可以定义多个Appender子节点来对需要输出的日志文件级别做控制。

layout:

关于标签,主要是做控制台的日志输出。

encoder:

主要是做日志文件的输出,主要是将个event事件转换成一组byte数组,其次是将转换后的字节数据输出到文件中

rollingPolicy:

TimeBasedRollingPolicy:它根据时间来制定滚动策略.时间滚动策略可以基于时间滚动按时间生成日志。

下面为我项目中对于root和logger的配置

启动项目控制台输出定义不同级别的日志

多环境日志输出

application.yml 会根据不同的环境读取对应的logback配置文件

总结

简单写了下,我们日常开发中需要配置的日志文件,Spring boot集成 logback。

以上就是Spring boot 整合Logback的详细内容,更多关于Spring boot 整合Logback的资料请关注其它相关文章!

相关文章