日志框架列举:
在Spring框架中使用JCL(commons-logging.jar)作为日志框架的抽象层
在SpringBoot中使用SLF4J作为日志框架的抽象层,而使用Logback作为日志的实现类
日志框架使用的原理
1.统一日志的使用原理(SLF4J和其他日志的整合)
2.SpringBoot中日志包之间的依赖关系
3.日志级别和其他SpringBoot关于日志的细节
日志级别由低到高(trace<debug<info<warn<error)
注意:SpringBoot默认输出Info级别的日志,默认情况下trace和debug级别的日志信息Springboot不会输出
Trace | 日志跟踪轨迹,相当于System.out |
Debug | 输出debug级别的日志 |
Info | 输出Info级别的日志 |
Warn | 输出Warn级别的日志 |
Error | 输出Error级别的日志 |
SpringBoot关于日志的相关配置
1. logging.level:指定日志输出的级别
例如:当我们项目上线以后,我们不再需要输出项目debug级别的日志,但这个时候我们不需要去代码里面一行一行的删除log.debug("debug log info")代码。我们只需要修改loggle.level到一个高于debug级别的日志级别,这样debug级别的日志自然不会输出。
2.logging.file.name: 指定输出日志文件的名字,SpringBoot默认情况下日志名为spring.log
3.logging.file.path: 指定输出日志文件的路径,SpringBoot默认日志文件路径为当前项目路径
其次:例如 logging.file.path=/spring/
//在linux系统中表示: linux系统root路径下的spring文件夹下
//在windows系统中表示:当前系统所处盘的root路径下的spring文件夹下
4.logging.pattern.console: 指定控制台下日志输出格式
5.logging.pattern.file: 文件日志内日志的输出格式
日志格式例子:
%d{yyyy-MM-dd-HH-mm} === [%thread:%r] === %-5level === %logger{50} %m%n
时间 === [线程:端口] === 日志级别 === 详细日志信息 方法换行
6.日志的高级使用,定义自己的日志配置文件
对于上面讲到的日志配置,我们只是简单的定义一些基本配置,而大部分日志的配置都是使用了SpringBoot对日志的默认配置,但是如果我们需要使用日志的一些高级功能例如:日志归档,异步日志…此时我们就需要配置自定义的日志配置。
让SpringBoot识别自定义日志配置文件:、
当我们使用哪一个日志系统就在SpringBoot配置目录下自定义对应的配置文件,这样SpringBoot就可以自动加载我们的配置文件。