Apache Log4j 2.0介绍

jopen 10年前

Apache Log4j是著名的Java日志框架之一,在早些年应用最广。但近两年来,随着SLF4J和LogBack的兴起,很多流行的开源框架在日志模块方面逐步转移到SLF4J+LogBack上,Log4j日渐衰落。

Apache Log4j 2.0的类图看起来与Logback相似,如图所示:
Apache Log4j 2.0介绍

那么,Apache Log4j 2.0有什么特点呢?请看下面。

1. API隔离

Log4j 2.0学习了SLF4J和LogBack的优点,把API及其实现类进行了分离。

2. 性能改进

官方称在很多情况下,性能比Logback更强。比较表如下:
Apache Log4j 2.0介绍

3. 支持多种API

Apache Log4j 2.0提供了对SLF4J和Apache Commons Logging API的支持。

4. 自动重载配置

这一点与Logback相同,Log4j 2.0在日志配置文件修改了后,可以自动进行重载,让配置生效。

5. 高级筛选器

这一点与Logback相同,Log4j 2.0支持基于上下文数据、标识、正则表达式和日志事件中的其它组件的过滤。

6. 插件架构

所有配置的组件都定义为Log4j的插件。

7. 属性支持

在配置文件中可以引用属性,还可以直接替代或传递到组件。

结论:

Log4j 2.0与LogBack相似,可以说各方面都相似,因此广大Java开发者又多了一种选择。仅此而已。