2014-09-04 47 views
1

我在logback.xml文件下面的代碼:沒有suceeded請求Logback.xml調試級別

<appender name="FILE" class="ch.qos.logback.core.FileAppender"> 
     <file> 
      ${TARGET}/Logs/loadtest-${TIMESTAMP}.log 
     </file> 
     <encoder> 
      <pattern>%d{HH:mm:ss.SSS} [%-5level] %logger{15} - %msg%n%rEx</pattern> 
      <immediateFlush>false</immediateFlush> 
     </encoder> 
    </appender> 
<root level="debug"> 
     <appender-ref ref="FILE" /> 
</root> 

的問題是,它讓太多輸出到日誌文件(包括成功和失敗的請求) 。我需要做的是保留錯誤消息的調試級別,但添加某種過濾器,以便不將成功的請求信息打印到文件中。我該怎麼做? 謝謝你提前

回答

0

好吧,我設法做到了。這個問題並不詳細:我實際上需要一些特定消息的調試級輸出。所以我給appender添加了一個過濾器:

<filter class="ch.qos.logback.core.filter.EvaluatorFilter"> 
    <evaluator> <!-- defaults to type ch.qos.logback.classic.boolex.JaninoEventEvaluator --> 
    <expression>return message.contains("whatYouNeedToFilter");</expression> 
    </evaluator> 
    <OnMismatch>DENY</OnMismatch> 
    <OnMatch>NEUTRAL</OnMatch> 
</filter> 

不要忘記這個過濾器所需的依賴性。我正在使用Gradle,所以它看起來像這樣:

compile 'org.codehaus.janino:janino:2.6.1'