线程安全 – log4j是否是线程安全的?

我有一个问题.我们在两个项目中使用log4j,这两个项目托管在同一个GlassFish服务器上.每个项目都有log4j.properties文件,该文件指向基于不同目录的文件(让我们将它们命名为Project1和Project2).

现在,由于一些不明原因,有时第一个项目的信息消息被写入Project2日志文件,反之亦然.我检查了两个项目的log4j.properties文件,没有任何内容指向其他项目的日志.

怀疑是log4j实际上并不是线程安全的,因此如果两个用户同时在两个系统中工作,则记录器的消息可能会混合在一起.这种猜疑是否正确?

最佳答案
是的,log4j是线程安全的:

Yes, log4j is thread-safe. Log4j components are designed to be used in
heavily multithreaded systems.

Ref.

您所描述的内容听起来更像是配置错误,而不是跨进程/线程问题.

转载注明原文:线程安全 – log4j是否是线程安全的? - 代码日志