Log 4 j 2が行番号を印刷できない問題を解決します。

4444 ワード

背景
%d{yyyy-MM-dd HH:mm:ss,SSS} %level [%t] %logger{36}(%F:%L) - %m%n
ログの出力フォーマットはファイル名、行番号表示を指定しましたが、印刷されたのは空です。なぜですか?答えはここです
ソリューション
pom.xml
<dependency>
    <groupId>com.lmaxgroupId>
    <artifactId>disruptorartifactId>
    <version>3.3.11version>
dependency>
log 4 j 2.xml
<AsyncLogger name="com.domain.app.web" includeLocation="true">
    <AppenderRef ref="File" />
AsyncLogger>
注意includeLocationtrueに設定しても、行番号を指定しても表示されません。disruptor:このカバンは個別に導入する必要があります。additivityfalseに設定します。そうでないと繰り返します。
完全な配置ノードを添付
<AsyncLogger name="com.domain.app.web" includeLocation="true" level="debug" additivity="false">
    <AppenderRef ref="File" />
AsyncLogger>