Log4j2 总结

学习笔记,为了加强记忆和深入理解在此记录备忘。如有错误和理解不当之处,还望指正。万分感谢!

另外,实例和内容有些是参照网络其他博文,如有侵权可联系删掉。

参考地址:https://mp.csdn.net/postedit


目录

一、必须的包

二、日志级别

三、配置文件

3.1 输出和格式

3.2 配置说明

四、使用过程中和Log4j的差别

4.1 导入的包不一样

4.2 读取配置文件方法不一样


之前总结了Log4j的入门使用,今天看看Log4j2的入门使用。Log4j2和Log4j是一个作者,只不过log4j2是重新架构的一款日志组件,他抛弃了之前log4j的不足,以及吸取了优秀的logback的设计重新推出的一款新组件。

一、必须的包

  • log4j-api-2.11.1.jar
  • log4j-core-2.11.1.jar

二、日志级别

这个和Log4j差不多

  • trace:追踪,就是程序推进一下,可以写个trace输出
  • debug:调试,一般作为最低级别,trace基本不用
  • info:输出重要的信息,使用较多
  • warn:警告,有些信息不是错误信息,但也要给程序员一些提示
  • error:错误信息。用的也很多
  • fatal:致命错误

三、配置文件

3.1 输出和格式

其中日志输出目的地和输出格式和Log4j基本一样,不再列出。参考之前的Log4j 总结

3.2 配置说明

log4j 2则已经弃用了properties这种方式,采用的是.xml,.json或者.jsn这种方式

系统选择configuration文件的优先级如下(放在src文件夹):

  • classpath下名为 log4j-test.json 或者log4j-test.jsn文件
  • classpath下名为 log4j2-test.xml
  • classpath下名为 log4j.json 或者log4j.jsn文件
  • classpath下名为 log4j2.xml

很多人认为src就是classpath,java项目中Classpath路径到底指的是哪里?

  • src不是classpath,WEB-INF/classes和lib才是classpath,WEB-INF/是资源目录, 客户端不能直接访问。
  • WEB-INF/classes目录存放src目录java文件编译之后的文件,xml、properties等资源配置文件,这是定位资源的入口。
  • lib和classes同属classpath,两者的访问优先级为: lib>classes。

配置文件说明,和Log4j的配置文件大同小异,注意个别差异就可以



  
  
    
    
      
      
      
      
    

        
    
    
      
    
  


  
  
    
    
      
      
    
  

四、使用过程中和Log4j的差别

在使用的过程中和Log4j有一些区别

4.1 导入的包不一样

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

4.2 读取配置文件方法不一样

// Log4jTest是类名
static Logger logger = LogManager.getLogger(Log4jTest.class.getName());

其他使用方法基本一样

你可能感兴趣的:(Log4j)