Spring学习笔记—Spring集成log4j

本文介绍了Log4j2作为开源日志项目的概念和优势,详细解析了其XML配置方式,包括Appenders元素的Console、File和RollingFile配置。Log4j2提供八种日志级别,允许根据需求调整日志输出量。实践中通常通过SLF4J API进行日志打印,配合Log4J2实现日志管理。理解并正确配置Log4j2有助于优化系统监控和问题排查。
摘要由CSDN通过智能技术生成

目录

Log4j概念和优点     

log4j2配置

log4j的日志级别

日志打印实现


Log4j概念和优点     

        Log4j是Apache的一个开源日志项目,通过log4j,开发人员可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是远程服务器。可以通过配置文件来灵活配置日志输出格式和日志生成级别,不需要修改应用程序代码,大大降低了对应用程序的侵入性。

log4j2配置

        log4j2是通过xml进行配置,一般命名为log4j2.xml。

log4j2.xml 的配置文件结构:

Appenders元素Appenders元素是Configuration元素的子节点,可以指定日志输出的路径,常见输出路径有控制台、文件和网络Socket等。Appenders元素常见子节点如下:

• Console:用来将日志输出到控制台。name属性指定Appender的名字;target属性可以为SYSTEM_OUT或SYSTEM_ERR,一般使用SYSTEM_OUT;PatternLayout元素设置日志输出的格式。

• File:用于设置将日志输出到指定的文件中。fileName指定输出日志的目标文件带全路径的文件名;name和PatternLayout元素的作用同Appenders中的PatternLayout。

• RollingFile:用于将日志输出到滚动文件中,日志输出时会判断文件是否满足封存文件的要求,若满足,则将文件封存并把日志写入到下一个滚动文件。其中的name、fileName和PatternLayout的作用同File;filePattern属性用于指定新建日志文件的命名格式;DefaultRolloverStrategy用来指定同一个目录下最多有几个日志文件时开始删除最旧的日志文件,并创建新的文件(通过max属性);Policies元素指定滚动日志的策略,即何时新建文件输出日志。

level属性用于定义日志输出级别,共有8个,从低到高顺序为All<Trace<Debug<Info<Warn<Error<Fatal<OFF;

AppenderRef是Root的子节点,用于指定将日志输出到Appenders元素定义的Appenders中。

log4j的日志级别

Log4j2中定义了8种不同的日志级别,各种日志级别如下(<表示小于):

All<Trace<Debug<Info<Warn<Error<Fatal<OFF;

        当开发者打印日志时需要注意,程序会打印高于或等于所设置级别的日志,设置的日志级别越高,打印出来的日志就越少;设置的日志级别越低,打印的日志就越多。选择合适的日志级别对于高并发场景下控制日志输出量很有帮助,否则可能会导致输出的日志过多或过少,不便于定位和监控系统运行情况。

 

日志打印实现

        企业开发过程中一般不直接使用Log4j2的API进行日志打印,而是使用SLF4J的API进行日志打印。

                                                                Log4j2执行原理图

         SLF4J可以有不同的日志实现,Log4J2只是其中的一种,当程序中将SFL4J、SFL4J-Log4J2桥接器、Log4J2配合使用时,即完成了一个Log4J2环境的搭建。一般情况下,将log4j2.xml文件放置在classpath的resources目录下即可(约定优于配置)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值