【发布时间】:2013-09-30 21:28:38
【问题描述】:
我通过设置系统将我公司的系统配置为使所有记录器异步
属性Log4jContextSelector 到org.apache.logging.log4j.core.async.AsyncLoggerContextSelector。我们使用 log4j 2.0。
当我通过系统运行一个小的输入文件时没有问题。但是当我运行一个更大的输入文件时(我们的系统应该运行比这个大得多的文件),OutOfMemoryError 是导致的。资料如下:
SEVERE: Exception processing: 14451294 org.apache.logging.log4j.core.async.RingB ufferLogEvent@226dc6bf
java.lang.OutOfMemoryError: Java heap space
然后我将最大堆大小增加到 4 gigs(总物理内存为 8G),导致另一个问题:
SEVERE: Exception processing: 775221 org.apache.logging.log4j.core.async.RingBufferLogEvent@1c6b80a9
java.lang.OutOfMemoryError: GC overhead limit exceeded
【问题讨论】:
-
你在审计什么吗?如果可能的话,你可以发布一个示例代码吗?
标签: java asynchronous logging out-of-memory log4j2