java系统日记记录_Java开发框架中的日志系统

原标题:Java开发框架中的日志系统

SpringBoot与日志-slf4j

日志框架

slf4j的使用

SpringBoot日志关系

日志使用

切换日志框架

a051c670ee6d51c644bf8b2df3ced301.png

日志框架

日志门面(接口,日志抽象层 )日志实现JCL(Jakarta Commons Logging)、slf4j(Simple Logging Facade for Java)、jboss-logginglog4j、JUL(java.util.logging)、log4j2、Logback

日志门面:slf4j

日志实现:Logback

SpringBoot选用的是slf4j和Logback

slf4j的使用

如何在系统中使用slf4j:

1.日志记录方法的调用,不应该调用日志实现类,应该调用日志抽象层里面的方法。给系统导入slf4j的jar和Logback的实现jar。

2.每一个日志的实现框架都有自己的配置文件。使用slf4j以后,配置文件还是使用日志实现框架的配置文件。

问题:使用slf4j+logback需要统一转换日志记录,别的框架使用其它日志框架的需要一起使用slf4j进行输出:

1.将系统中的其他框架日志先替换出去,

2.用面向slf4j的jar替换原有的日志框架,

3.导入slf4j的jar和Logback的实现jar。

SpringBoot日志关系

SpringBoot底层也是使用slf4j+logback的方式进行日志记录

SpringBoot将其它日志都替换成slf4j

如果需要引入其它框架,一定要把这个框架的默认日志框架依赖移除。

SpringBoot能自动适配所有的日志,而且底层使用的是slf4j+logback的方式记录日志,引入其它框架的时候,只需要将这个框架依赖的日志框架排除掉即可。

日志使用

默认配置

logging.filelogging.pathExampleDescriptionnone(none)只在控制台输出指定文件名(none)my.log输出日志到my.log文件(none)指定目录/var/log输出到指定目录的spring.log文件中

指定配置

给类路径下放上每个日志框架指定的配置文件,SpringBoot就不使用本身默认的配置。

Logging SystemCustomizationLogbacklogback-spring.xml, logback-spring.groovy, logback.xml or logback.groovyLog4j2log4j2-spring.xml or log4j2.xmlJDK(Java Util Logging)logging.properties

logback.xml:会直接被日志框架识别加载

logback-spring.xml (推荐):日志框架不能直接加载日志配置项,由springBoot解析日志配置只使用SpringBoot高级功能SpringProfile,就可以通过

设置指定某段配置只在某个环境下生效

切换日志框架

可以按照slf4j的日志适配图进行相关的切换-替换加引入

切换log4j2:由于SpringBoot底层有log4j2的框架,只要在依赖中排出之前的starter-logging依赖。

责任编辑:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值