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 ギガ (物理メモリの合計は 8G) に増やしたところ、別の問題が発生しました。
SEVERE: Exception processing: 775221 org.apache.logging.log4j.core.async.RingBufferLogEvent@1c6b80a9
java.lang.OutOfMemoryError: GC overhead limit exceeded