Java日志组件,Apache Log4j 2.0正式版发布

jopen 10年前

Log4j是一个开放源代码的日志记录框架,用Java编写,且被广泛使用。它使开发者能够控制日志信息输出的目的地和日志的输出格式。开发者还能 够使用外部配置文件,在系统运行时配置日志记录的相关信息。近日,Apache Log4j 2团队宣布Log4j 2.0正式版发布,该版本是近四年来,继先前的13个版本后的第一个正式版,需要Java 6或者更高的Java版本支持。它相对于Log4j 1.x系列版本,修复了大量bug和优化了性能。

主要改进包括:

  1. 新增了自定义日志记录包装器,取代了现有的日志级别和扩展的日志记录包装器
  2. 修复了RegexFilter不能匹配多行日志的问题
  3. 修复了Async Logger不能记录线程上下文的栈数据
  4. 为ThreadContext.ContextStack接口新增了getImmutableStackOrNull() 方法
  5. 修复了使用SocketAppender和Async Loggers时出现的序列化错误的问题
  6. 修复了在Android开发中不能找到类‘javax.naming.InitialContext’的问题
  7. 修复了LoggerConfigs只能继承父类等级的问题
  8. 修复了特殊字符在PatternLayout不起作用的问题
  9. 将Apache Commons Logging的版本从1.1.3升级到了1.2
  10. 将Jackson的版本升级到了2.4.1版本
  11. 将org.apache.logging.log4j.core.layout包下的AbstractLayout抽象类型优化成了不变类型

另外请注意,Log4j 2.0的API是和Log4j 1.x系列的API不兼容的。欲获得Log4j 2.0的更多信息,请登录Log4j 2官方站点

来自:http://www.infoq.com/cn/news/2014/07/apache-log4j2.0-publish