2016-03-18 20 views
5

Bu adresten, iki ekleyici ve paket adına göre bazı özel günlüğe kaydetme düzeyleri içeren basit Logback yapılandırma dosyasına sahibim.Farklı Logback ekleri için pakete özel günlüğe kaydetme düzeyleri

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE xml> 
<configuration> 

    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> 
     <encoder> 
      <charset>UTF-8</charset> 
      <pattern>%date{HH:mm}\t%-5level\t%msg%n</pattern> 
     </encoder> 
    </appender> 

    <appender name="FILE" class="ch.qos.logback.core.FileAppender"> 
     <file>my_logger.log</file> 
     <encoder> 
      <charset>UTF-8</charset> 
      <pattern>%date{dd MMM HH:mm}|%class{0}|%-5level|%msg%n</pattern> 
     </encoder> 
    </appender> 

    <!-- custom logging levels --> 
    <logger name="myapp.package1" level="INFO" /> 
    <logger name="myapp.package2" level="INFO" /> 

    <root> 
     <appender-ref ref="CONSOLE" /> 
     <appender-ref ref="FILE" /> 
    </root> 

</configuration> 

Bu yapılandırmada, her iki ek için de özel günlüğe kaydetme düzeyleri uygulanır.

Yalnızca ConsoleAppender bu özel günlüğe kaydetme düzeylerini kullanacak şekilde nasıl değiştirebilirim, FileAppender ise varsayılan seviyelere yapışıyor?

<appender name="INFO_CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> 
    ... 
    <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> 
     <level>INFO</level> 
    </filter> 
</appender> 

Ardından, özel için günlük düzeylerini INFO_CONSOLE ekleyin: Bir özel filtre uygulamak istemiyorsanız

cevap

4

, sen (siz davayı INFO) sabit bir eşik ile yeni bir appender oluşturabilir ve FILE ekleyiciniz. additivity="false" özniteliği, günlüğün root'dan miras alınan CONSOLE ekleyiciye giriş yapmasını engeller.

<logger name="myapp.package1" additivity="false"> 
    <appender-ref ref="INFO_CONSOLE" /> 
    <appender-ref ref="FILE" /> 
</logger> 

Bu yalnızca CONSOLE için INFO ve üzeri günlüğe kaydeder myapp.package1 hariç FILE ve CONSOLE appenders için DEBUG ve üzeri, giriş yapmalıdır.

+0

Tam olarak ihtiyacım olan şey, teşekkürler. – Alphaaa

İlgili konular