Logback - логировать каталину в отдельный файл

Я настроил TomEE с Logback-Logging-Framework, и мне нужно регистрировать выходные данные TomEE/Catalina в дополнительном файле catalina.out, в то время как обычно все журналы идут в application.log< /сильный>.

Я придумал следующую конфигурацию, но в моем файле catalina.out все еще есть все операторы гибернации. Как я могу разделить операторы ведения журнала? Как я могу зарегистрировать данный пакет только в отдельном файле?

<?xml version="1.0" encoding="UTF-8"?>
<!-- http://logback.qos.ch/manual/configuration.html -->
<configuration scan="true" scanPeriod="60 seconds">

<contextListener class="ch.qos.logback.classic.jul.LevelChangePropagator" />

<!-- =============================================== -->
<!-- Logging TomEE/Catalina -->
<!-- =============================================== -->

<appender class="ch.qos.logback.core.FileAppender" name="FILE-CATALINA">
    <file>${catalina.base}/logs/catalina.out</file>
    <encoder>
        <pattern>%d %-5p: [%c] %m %rEx{20} %n</pattern>
    </encoder>
</appender>

<logger name="org.apache.catalina" level="INFO" additivity="false">
    <appender-ref ref="FILE-CATALINA" />
</logger>

<!-- =============================================== -->
<!-- Logging Application -->
<!-- =============================================== -->

<appender class="ch.qos.logback.core.FileAppender" name="FILE-APP">
    <file>${catalina.base}/logs/application.log</file>
    <encoder>
        <pattern>%d %-5p: [%c] %m %rEx{3} %n</pattern>
    </encoder>
</appender>

<logger name="org.hibernate" level="INFO" />
<logger name="org.apache" level="INFO" />
<logger name="org.quartz" level="INFO" />

<!-- =============================================== -->
<!-- ROOT Logger -->
<!-- =============================================== -->

<root level="ERROR">
    <!-- log packages with INFO and all errors -->
    <appender-ref ref="FILE-APP" />
</root>

<root level="OFF">
    <!-- only log package org.apache.catalina -->
    <appender-ref ref="FILE-CATALINA" />
</root>
</configuration>

Теперь в журнале catalina.out все еще есть журналы гибернации (поскольку спящий режим настроен как INFO):

2015-04-30 13:38:24,004 INFO : [org.apache.catalina.startup.Catalina] Initialization processed in 4949 ms
2015-04-30 13:38:24,033 INFO : [**org.apache.catalina**.core.StandardService] Starting service Catalina
2015-04-30 13:38:24,034 INFO : [org.apache.catalina.core.StandardEngine] Starting Servlet Engine: Apache Tomcat (TomEE)/7.0.47 (1.6.0)
2015-04-30 13:38:28,484 INFO : [org.hibernate.annotations.common.Version] HCANN000001: Hibernate Commons Annotations {4.0.2.Final}
2015-04-30 13:38:28,506 INFO : [org.hibernate.Version] HHH000412: Hibernate Core {4.2.8.Final}

person Markes    schedule 30.04.2015    source источник


Ответы (1)


Только что понял:

Я удалил второй корневой модуль (корневой уровень = "OFF" ...), и приложение FILE-CATALINA получает только сообщения из настроенного приложения appender-ref (больше никаких сообщений корневого уровня).

person Markes    schedule 30.04.2015
comment
Правильно, разрешен только один корневой элемент: logback.qos.ch/manual/configuration.html #синтаксис - person sheltem; 30.04.2015