关于springboot日志的注意事项

--关于日志兼容

首先,springboot采用的默认日志框架是 slf4j+logback ,一般也推荐使用slf4j作为抽象层调用,一来是slf4j本身好用,二来是slf4j的兼容性高,具备大量的适配包,可以与commons-logging,log4j等快速适配。

我们在springboot中使用其它框架时,一定要把其它框架的默认日志包移除,否则springboot自动匹配相应的替代包后会导致冲突。比如如果我们引用了某个带有log4j的框架,那么就要把 log4j包 移除,否则会 与springboot自动匹配的 log4j-to-slf4j包 相冲突

另外的,我们编程时主要一律 调用抽象包slf4j的方法 ,使得整个程序不依赖于某个具体的日志工具包,而只需要后期 引入具体工具包(如logback包) 就能自动调用。

 

--关于日志优先级

springboot默认优先级一般为 info ,所以如果优先级低于info是不会生效的

//优先级从低到高
logger.trace("追踪");
logger.debug("测试");
logger.info("自定义");
logger.warn("警告");
logger.error("漏洞");

//重设默认优先级,application.properties 中
//注意path是路径包含的全部生效

logging.level.path=method

 

--关于日志文件的指定

注意,无论是路径还是文件名,都是支持绝对路径的(注意是就算在Windows开发环境下也是 D:/spring/ 形式,而不是Windows的 D:\spring\ 形式)。如果想使用相对路径也可以,如果用 / 开头,即本项目所在盘的根目录,比如 D:/ 。经过测试,如果不加前缀不会生成日志文件,以前是生成在本项目中。

logging.file.path=directory  //springboot会自动在该目录下创建spring.log文件
logging.file.name=file

 

--关于日志文件的多文件配置

如果我们需要独立配置,那么我们只需要将原日志框架的配置文件放在springboot的配置文件群中即可,系统会自动覆盖掉springboot的默认配置。但是我们一般会给 logName.xml 加上一个后缀,比如 logback.xml 改为 logback-spring.xml ,这样就不是由日志框架识别加载,而是由springboot加载,这样我们就能使用 <springProfile> 标签,也就是为不同的日志配置匹配不同的运行环境。

 

--关于日志框架切换

一般不建议切换掉 slf4j+logback ,但是要的话也可以,就把相应的依赖包删掉,再引入新的框架依赖包就行。这里注意, slf4j+log4j2 也是springboot支持的一个组合,而且能快速切换,直接把依赖 spring-boot-starter-logging ,换成 spring-boot-starter-log4j2 就行了。

 

--end

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值