web-dev-qa-db-ja.com

ログバックロギング-同期または非同期

Logbackに追加されたデフォルトのファイルは次のとおりです。

ch.qos.logback.core.FileAppender

同期または非同期?ログが同じスレッドの一部として表示されているため、同期しているようです。

9
Sandeep Jindal

はい、デフォルトでは同期です。 ドキュメントで非同期にする方法の設定例 を見ることができます。

このようにして、anyAppender非同期を(単にAsyncAppenderでラップすることにより)より簡単にすることができます。すべてのAppender実装は、非同期性を独自に管理する必要があります。

13
Petr Janeček

ほとんどのアペンダーは同期しています(例:RollingFileAppender)。非同期ロギングを有効にするには、アペンダーをAsyncAppenderでラップして、同期アペンダーに基づいて非同期アペンダーを作成する必要があります。これは、以下のようにXMLで簡単に実行できます。

<appender name="ASYNC-VERSION-APPENDER" class="ch.qos.logback.classic.AsyncAppender">
    <appender-ref ref="DEFAULT-APPENDER"/>
</appender>
<logger name="ASYNC-LOGGER" level="INFO" additivity="false">
    <appender-ref ref="ASYNC-VERSION-APPENDER"/>
</logger>
1
ProtossShuttle