是否值得从log4j1迁移到log4j2

时间:2015-09-08 12:13:00

标签: java log4j log4j2

我们正在发展我们的企业Java EE基础架构,并正在考虑改变我们的日志记录平台。我们目前使用 slf4j 作为API, log4j1 作为基础日志记录实施。

由于我们不直接使用log4j的API,而是使用sf4j,所有这些都是配置更改的问题,已经完成了。

我们对日志系统的使用非常基础,因此我们不需要像log4j2的高级过滤那样的功能。

关于绩效,根据docs,它似乎并没有太大的改进。

那么,您认为我们应该将我们的应用程序从slf4j + log4j1迁移到slf4j + log4j2吗?为什么?你认为它有什么优势?

2 个答案:

答案 0 :(得分:2)

根据文档,异步记录器和追加器似乎可以极大地提高Log4J 2的性能:https://logging.apache.org/log4j/2.x/manual/async.html#Performance

此外:Log4J 1是生命终结:https://blogs.apache.org/foundation/entry/apache_logging_services_project_announces

宣布:

  

Apache Log4j 2具有完全重写的框架。此外,   它更快,更可靠,更易于开发和维护。

所以,是的,我认为值得升级。

答案 1 :(得分:0)

就我的实验而言,Log4j2没有对Log4j进行重大升级。但是在Log4j上引发了一些Bug修复,现在已经进入了Log4j2。 以下链接将提供有关此类修复的信息

https://issues.apache.org/bugzilla/show_bug.cgi?id=50213&action=View

由于您使用的是SLF4j,因此很容易迁移到Log4j2 - 不会有任何代码更改,只会更改库。