Отладка Log4j в файл - информация в консоль


Я использую log4j для журналов.
У меня есть класс, который я хочу вывести на консоль только на уровне log.info,
И напечатать в какой-нибудь файл log.info + log.debug levels (тот же класс).

Я попытался настроить log4j.xml следующим образом:

<!--appender to parser file-->
<appender name="parserFile" class="org.apache.log4j.FileAppender">
    <param name="File" value="/var/log/java/parser/parser.log" />
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%d{E MMM dd HH:mm:ss} %c : %m%n" />
    </layout>
</appender> 

 <!--appender to the stdout-->
<appender name="console" class="org.apache.log4j.ConsoleAppender">
    <param name="Target" value="System.out"/>
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%-5p %c{1} - %m%n"/>
    </layout>
</appender>


<logger name="parser.ParserMainJava">
    <level value="debug" />
    <appender-ref ref="parserFile" />
</logger>

<logger name="parser.ParserMainJava">
    <level value="info" />
    <appender-ref ref="console" />
</logger>

Это моя конфигурация, но я не могу использовать 2 регистратора с одинаковым именем пакета.
Есть предложения?
Спасибо,
Или.


person ork    schedule 02.02.2014    source источник


Ответы (1)


Просто определите один регистратор для "parser.ParserMainJava" с уровнем отладки и добавьте следующий параметр в определение консольного приложения:

<param name="Threshold" value="INFO"/>
person Lolo    schedule 04.02.2014