SpringBoot中的日志框架学习
日志框架中我们选择的是SLF4J日志门面。日志实现选择的是Logback。调用日志记录的方法,不应该直接调用实现类,而是调用日志抽象层里面的方法。
1.使用slf4j的方法
给系统导入slf4j包和日志实现Logback包,如果要使用log4j,就导入slf4j和slf4j-log4、log4j包
1 | import org.slf4j.Logger; |
每一个日志的实现框架都有自己的配置文件,使用slf4j以后,配置文件还是写日志实现框架的配置文件。
2.统一日志记录
统一日志框架官方图示
统一日志框架方法总结
1、将系统中的其他日志框架先排除出去。
2、用中间包来替换原有的日志框架。
3、我们导入slf4j其他的实现
3.SpringBoot中的日志关系
1 | <dependency> |
SpringBoot使用下面的日志
1 | <dependency> |
SpringBoot日志依赖图示
SpringBoot底层使用slf4j+logback的方式进行日志记录。同时将其他日志框架也装换为slf4框架。
如果我们使用其他框架,就先把这个框架的默认日志框架给排除,例如我们使用Spring,就先排除Spring默认的commons-logging日志框架。
4.SpringBoot中使用slf4j
SpringBoot默认配置了日志框架,我们直接就可以使用,如下
1 | (SpringRunner.class) |
修改日志级别的方法,添加配置文件
1 | logging: |
指定日志文件输出位置
logging.file | logging.path | Example | Desciption |
---|---|---|---|
(none) | (none) | 只在控制台输出 | |
指定文件名 | (none) | my.log | 输出日志到my.log文件 |
(none) | 指定目录 | /var/log | 输出到指定目录的spring.log文件中 |
logging.file不指定路径在当前项目下生成springboot.log文件,也可以指定路径D:/springboot.log
logging.path指定为/spring/log就会在当前磁盘的根路径下创建一个spring文件夹和log文件夹,使用spring.log为日志文件。
5.使用自己的配置文件
如果使用logback配置文件,就吧logback.xml放在项目resources目录下即可,
1 |
|
如果将logback.xml更改为logback-spring.xml就是有SpringBoot解析日志配置,就可以使用SpringBoot的Profile功能,指定在某种开发环境下才生效。
1 | <layout class="ch.qos.logback.classic.PatternLayout"> |