2012-04-19 5 views
1

私はアプリケーションの中に4つのrollingfileappenderを持つasyncappenderを使用しています。 私はそれに使用されているバッファの詳細を取得することができません。 私は説明を必要とします:log4Jで使用しているときにバッファがAsync Appenderでどのように役立つのですか?

  1. バッファーの仕組みは?
  2. バッファ内のイベントが記録された後にバッファをフラッシュする方法はありますか?
  3. 設定ファイル(.xmlファイル)を使用してこのフラッシュを行うことはできますか、またはJavaクラスでコードを作成する必要がありますか?

答えて

1
  1. ロギングイベントが配置されるキューがあります。ディスパッチャスレッドがあり、キューからイベントを受け取り、それを基礎となるアペンダに公開します。

2、3.スレッドによって自動的にフラッシュされます。

手動でフラッシュを制御することはできません。実装の詳細なので、設計通りです。

通常、十分に速く動作するため、非同期アペンダーはファイルアペンダーに対して意味がないと考えます。私はそれの主な目的は、データベースや一時的なネットワークの不具合を持つ可能性のあるsmtpアペンダーをラップすることだと思います。

+0

ありがとうございます。 – user1343183

+0

この情報をありがとうございます。 – user1343183

+0

私の答えは、バッファが自動的にフラッシュされ、このasynappenderを使用するときにバッファがオーバーフローするような問題が発生しないということです。 – user1343183

関連する問題