クラスター環境で実行されているWebアプリケーションにlog4jを使用しています。いくつかの状況では、一部のプロセス(特にない)のロギングが失われます。理由を特定することはできません。単一のサーバーインスタンスで実行すると、正常に機能します。私は毎日ローリングファイルアペンダーを使用しています。追加/変更する追加の属性はありますか?Async Appenderは役に立ちますか?これに関する解決策はありますか?
編集:以下は私が使用することを計画しているAsyncAppenderと一緒にlog4jXMLです
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="true">
<appender name="appLog" class="org.apache.log4j.DailyRollingFileAppender">
<param name="File" value="/logs/app.log" />
<param name="DatePattern" value="'.'yyyy-MM-dd" />
<param name="Threshold" value="DEBUG" />
<param name="Append" value="true" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p (%F:%L) - %m%n" />
</layout>
</appender>
<appender name="async" class="org.apache.log4j.AsyncAppender">
<param name="BufferSize" value="256" />
<param name="LocationInfo" value="true"/>
<appender-ref ref="appLog" />
</appender>
<root>
<priority value="debug" />
<appender-ref ref="async" />
</root>
</log4j:configuration>