log4j:在同一容器上创建不同EJB时的风险将其日志写入同一.log文件

时间:2012-06-13 09:12:52

标签: log4j

可以在同一容器上部署不同的EJB并同步工作 将他们的应用程序日志写在同一个.log文件中,没有任何风险, 条件是它们都使用相同的log4j.xml和相同的FileAppender。

我确认它在我的桌面上运行, 但是如果这些EJB处于高加载程序操作下呢? 我应该关注文件锁定还是延迟问题?

此致

1 个答案:

答案 0 :(得分:1)

是的,同一个应用程序服务器实例中的多个EJB可以写入同一个appender。它们是一个JVM的一部分,log4j是线程安全的。

在高负荷下你会遇到延误;但这就是日志级别的用途。在重要级别上记录尽可能少的语句,在调试级别上是详细的。

可以共享相同的文件追加器(大多数情况下它似乎正在工作),但是很危险,尤其是设置了滚动策略。您可能会以这种方式丢失日志,但log4j并未针对此进行设计。