Я новичок в log4j и стараюсь использовать его в проекте. По какой-то причине информация не будет отображаться на консоли. Он работает только тогда, когда я меняю его на logger.error(). Это происходит только в классе userServiceImpl, другие классы, такие как контроллеры, в порядке. Это log4j.xml:log4j не отображается информация на консоли
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration debug="false"
xmlns:log4j="http://jakarta.apache.org/log4j/">
<!-- This default ConsoleAppender is used to log all NON perf4j messages
to System.out -->
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{dd MMM yyyy HH:mm:ss} %5p %c{1} - %m%n" />
</layout>
</appender>
<!-- The root logger sends all log statements EXCEPT those sent to the perf4j
logger to System.out. -->
<root>
<level value="ERROR" />
<appender-ref ref="console" />
</root>
<logger name="com.click.heal.controller" additivity="false" >
<level value="INFO" />
<appender-ref ref="console"/>
</logger>
<logger name="com.click.heal.service" additivity="true" >
<level value="INFO" />
<appender-ref ref="console"/>
</logger>
</log4j:configuration>
Извините, я забыл упомянуть, что класс, с которым у меня возникла проблема, находится в пакете услуг, который является обложкой второго регистратора в log4j.xml. Я даже изменил уровень корня до INFO, он все еще не работает. После того, как я попробовал logger.getRootLogger(). SetLever (level.INFO) начал работать. Похоже, что корневая установка в log4j.xml не работает над этим классом –
Теперь она работает! Спасибо Джим! –
Без проблем, рад, что я мог бы помочь. – Jim