Apache宣布Log4j版本1生命周期终结。虽然Log4j版本2在2014年7月已经发布,版本1仍然维护到2015年8月初。新版本是一个完全重写的日志库,解决了许多版本1的问题,达到了前所未有的性能。Apache已经为简化升级做出了努力,但是高级用户可能需要做一定的迁移工作。
根据Apache的报告,最早发布于1999年的日志框架Log4j版本1有许多架构上的问题和发布过程中的不足,这些问题导致开发起来相当困难。这促使一些维护Log4j的社区开发者放弃了这个框架,转投其他类似的项目,如Logback,这些项目也鼓动开发者这样做。为此,Apache决定从头开始编写Log4j版本2,克服第一个版本的不足之处,恢复部分社区基础。
尽管Log4j版本2有如此多优势,到目前为止它的使用率增长很慢。根据maven中央仓库统计,在写这篇文章的时候,使用Log4j版本2的构件有大约350个,而使用版本1的有将近6000个。相比之下,使用Logback的构件有超过5000个。
为了克服这个问题,Apache试图让升级Log4j版本2过程尽可能的简单。对于通过类似SLF4J等日志门面使用Log4j的场景,升级只需要将绑定的jar文件从slf4j-log4j12替换成log4j-slf4j-impl-2.0,移除所有Log4j版本1的引用,添加版本2的实现jar文件。对于直接使用Log4j的场景,用户需要参考Apache的迁移指南,迁移指南提供了两种方案:所有调用都转换成新的API,或者使用桥接jar文件,它将会捕捉所有使用Log4j版本1基础设施的调用,将它们转发到Log4j版本2。
Read full article from Log4j版本1生命周期终结
No comments:
Post a Comment