2013-01-03 59 views
0

我已經擴展了Log4J Logger類並創建了一個自定義Logger類來決定是否登錄。Log4j擴展Logger

我的模式佈局具有%F%M參數,以顯示執行日誌的類名和方法名。

問題是,不是顯示異常調用者類和方法名稱,而是顯示我的自定義記錄器的類和方法名稱!

我需要做什麼才能顯示正確的信息?

回答

0

您需要提供您的班級作爲forcedLog()方法的完全限定班級名稱。

private static final String FQCN = MyCustomLogger.class.getName(); 

... 

public void info(Object message) { 
    if(repository.isDisabled(Level.INFO_INT)) 
     return; 
    if(Level.INFO.isGreaterOrEqual(this.getEffectiveLevel())) 
     forcedLog(FQCN, Level.INFO, message, null); 
} 

.... 

我不確定你試圖過濾掉什麼,但最好使用過濾器而不是擴展記錄器。

相關問題