2014-09-04 45 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'