2012-07-19 251 views
3

我使用logback進行日誌記錄,並發現過濾堆棧跟蹤存在一些問題。 我哈瓦的結構是這樣的:Logback - 過濾堆棧跟蹤

public class Main { 
    static final Logger logger = (Logger) LoggerFactory.getLogger(Main.class); 

    public static void main(String[] args) { 
     logger.debug("Start"); 

     MyObject1 loggingElement = new MyObject1(); 
     loggingElement.logg(); 

     logger.debug("End"); 
    } 
} 


public class MyObject1 { 

    public MyObject2 obj; 
    static final Logger logger = (Logger) LoggerFactory.getLogger(MyObject1.class); 

    public MyObject1() { 
     obj = new MyObject2(); 
    } 
    public void logg() { 
     obj.loggError(); 
    } 
} 
public class MyObject2 { 
    static final Logger logger = (Logger) LoggerFactory.getLogger(MyObject2.class); 

    public void loggError() { 
     logger.error("Error info", new Throwable("Error")); 
    } 
} 

和配置XML這樣的:

<property name="mask" 
      value="MyObject2"/> 


<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> 
    <encoder> 
     <pattern>%d{HH:mm:ss} | %level | %-4thread | %-21logger | %m%n 
     </pattern> 
    </encoder> 
</appender> 

<root level="${root.level:-TRACE}"> 
    <appender-ref ref="STDOUT" /> 
</root> 

當運行主方法我得到輸出是這樣的:

12:29:35 | DEBUG | main | com.logging.Main  | Start 
12:29:35 | ERROR | main | com.logging.MyObject2 | Error info 
java.lang.Throwable: Error 
    at com.logging.MyObject2.loggError(MyObject2.java:11) [bin/:na] 
    at com.logging.MyObject1.logg(MyObject1.java:17) [bin/:na] 
    at com.logging.Main.main(Main.java:14) [bin/:na] 
12:29:35 | DEBUG | main | com.logging.Main  | End 

我想在它與「MyObject1」刪除行並留下堆棧跟蹤的其餘部分不變就像INT這個例子: http://java.dzone.com/articles/filtering-stack-trace-hell

我試圖改變的logback的配置

<pattern>%d{HH:mm:ss} | %level | %-4thread | %-21logger | %m%n%ex{full,${mask}} 
</pattern> 

不起作用在所有

<pattern>%d{HH:mm:ss} | %level | %-4thread | %-21logger | %m%n%eXe{full,${mask}} 
      </pattern> 

刪除整個堆棧跟蹤(對我來說不是解決)

任何KN什麼都可以幫助?

+0

您使用的物品或標準的logback罐子中提到的叉。 Logback目前還不支持此功能,請參閱open ticket [here](http://jira.qos.ch/browse/LOGBACK-540) – gresdiplitude 2012-07-25 12:31:42

+0

;/im不是真的對fork感興趣,但是你的回答清除了我的困惑,謝謝 – viniolli 2012-07-30 11:22:17

回答