こんにちは、特定のクラスでしかログ メッセージが表示されず、どこを見ればよいかわかりません。ログパターンを間違えましたか? これは私の log4j 構成です。私は sfl4j で使用しています:
<!-- Appenders -->
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%t] (%13F:%L) - %m%n" />
</layout>
</appender>
<!-- Application Loggers -->
<logger name="com.stackoverflow.test">
<level value="info" />
</logger>
<!-- 3rdparty Loggers -->
<logger name="org.springframework.core">
<level value="info" />
</logger>
<logger name="org.springframework.beans">
<level value="info" />
</logger>
<logger name="org.springframework.context">
<level value="info" />
</logger>
<logger name="org.springframework.web">
<level value="info" />
</logger>
<!-- Root Logger -->
<root>
<priority value="warn" />
<appender-ref ref="console" />
</root>
私はこのようなクラスフィールドのロガーを作成しています:
private static final Logger logger = LoggerFactory.getLogger(DashboardController.class);
そして次のようにロギングします:
logger.info("this variable x has value -> {}", x);
何かご意見は ?
アップデート
Petar Minchev の回答に従って情報に変更されましたが、それでも何もログに記録されません。
アップデートⅡ
いくつかの依存関係を追加した後、これはいくつかのクラスで機能します(まだ他のクラスでは機能しません)。runnable を実装するいくつかのクラスがあり、それらは複数のスレッドで実行され、それらからログ メッセージを取得しません。