SLF4J не регистрируется для общего использования с jcl-over-slf4j
Перемещая нашу текущую запись в журнал для использования SLF4J (с log4j), я обнаружил, что он не будет регистрироваться у appender для регистрации общих файлов на моем сервере приложений. Когда он попадает в журнал регистрации общих ресурсов (этот конкретный пример находится в классе TextProviderHelper), он имеет правильно введенный регистратор и с правильным уровнем регистрации, но не отображается в system.out. Вот мои настройки:
pom.xml:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.10</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>1.7.10</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jul-to-slf4j</artifactId>
<version>1.7.10</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.10</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.2</version>
<scope>provided</scope>
</dependency>
log4j.xml:
<appender name="consoleAppender" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out" />
<param name="Threshold" value="ERROR" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c %x - %m%n" />
</layout>
</appender>
<logger name="org.apache.struts2.util.TextProviderHelper" additivity="false">
<level value="DEBUG" />
<appender-ref ref="fileAppender" />
<appender-ref ref="consoleAppender" />
</logger>
1 ответ
Решение
Если я правильно вижу, только сообщения с ОШИБКОЙ или более высоким уровнем (FATAL?) Отправляются аппендеру из-за его порога, поэтому нет INFO, WARN, DEBUG ....