2016-08-30 12 views
3

log4j2でカスタムアペンダーを作成しました。カスタムアペンダーを使用しているときに、次のエラーが表示されます。「ERRORはアペンドされていないアペンダーに追加しようとしました。どんな助けもありがとうございます。アペンダが使用可能な状態であることを各ログイベントのLog4j2カスタムアペンダー:ERROR起動していないアペンダーに追加しようとしました

答えて

3

Log4jの2つのチェックします。表示されているエラーは、Log4jがappenderが使用できる状態になっていないことを検出したことです。

一部のアペンダーは、使用する前に準備を行う必要があります。 start()ライフサイクルメソッドは、アペンダーが初期化を実行できる場所です。 Log4jは、STARTED状態ではないアペンダにイベントをルーティングしません。

アペンダーが設定によって追加された場合、Log4jはライフサイクルメソッドを呼び出します。あなたのアペンダーがAbstractAppenderを拡張する場合、これは状態を更新し、十分でなければなりません。それ以外の場合は、AbstractAppenderのライフサイクル状態管理を見てください。

コードで設定する場合は、明示的にstart()を呼び出す必要があります。

+0

ありがとう@Remko。 AbstractAppenderを拡張し、XMLを使用してアペンダーを設定しました。あなたのアドバイスに従ってstart()メソッドの呼び出しを調べます。ありがとう。 – janeshs

関連する問題