2017-09-05 57 views
1

我想顯示日誌到控制檯以及文件,但是在文件中我只想要某些特定的日誌,將顯示從一個特定的類,我不知道如何做到這一點。下面是我logback.xml使用logback只顯示一個類的日誌

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

<configuration> 

    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> 
     <encoder> 
      <pattern>{ "date_time":"%date", "thread":"[%thread]", "log_level":"%-5level", "class_name":"%logger{0}", "log_message":"%msg" }%n</pattern> 
     </encoder> 
    </appender> 

    <appender name="FILE" class="ch.qos.logback.core.FileAppender"> 
    <file> test.txt </file> 
    <append>false</append> 
    <encoder> 
     <pattern>{ "date_time":"%date", "thread":"[%thread]", "log_level":"%-5level", "class_name":"%logger{0}", "log_message":"%msg" }%n</pattern> 
    </encoder> 
    </appender> 

    <root level="info"> 
    <appender-ref ref="FILE" /> 
    <appender-ref ref="STDOUT" /> 
    </root> 

</configuration> 

回答

2

只是聲明爲貴「的一個特定的類」一logger,然後將該記錄與FILE的appender關聯。

例如:

<appender name="FILE" class="ch.qos.logback.core.FileAppender"> 
    <file>test.log</file> 
    <encoder> 
     <pattern>{ "date_time":"%date", "thread":"[%thread]", "log_level":"%-5level", "class_name":"%logger{0}", "log_message":"%msg" }%n</pattern> 
    </encoder> 
</appender> 

<logger name="your.particular.Class"> 
    <appender-ref ref="FILE" /> 
</logger> 

<root level="info"> 
    <appender-ref ref="STDOUT" /> 
</root> 

這將確保受your.particular.Class發出任何日誌事件指向FILE附加器和其他所有的日誌就只會STDOUT附加目的地。

相關問題