log4netによる非同期によるログ書き込み機能
log4netはデフォルトで同期的にログを書き込みますが、非同期的にログを書き込むように設定できます。方法は次のとおりです。
- 「Log4netの設定ファイル」に node「AdoNetAppender」を追加して、BufferSizeプロパティに0以上の既定値で動かすバッファサイズを設定します。
<appender name="AdoNetAppender" type="log4net.Appender.AdoNetAppender">
<!-- 其他配置项 -->
<bufferSize value="100" />
</appender>
- プロパティ設定ファイルに「Async」というラッパーノードを追加し、type属性を「log4net.Appender.AsyncAppender」に設定します。定義済みの「AdoNetAppender」を、Asyncノードの子ノードとして追加します。
<appender name="Async" type="log4net.Appender.AsyncAppender">
<appender-ref ref="AdoNetAppender" />
</appender>
- 前のロガーノードの参照を「Async」ノードで置換する。
<root>
<level value="ALL" />
<appender-ref ref="Async" />
</root>
これらの設定によって、log4netライブラリはデータベースにログを非同期に書き込むようになります。