簡體   English   中英

如何通過Logback使用擴展SLF4J

[英]How to use extended SLF4J with Logback

我們擴展了SLF4J的Logger API並創建了AppLogger接口。 我們出於某些需要這樣做,在此我無法透露。 現在,我們想將此擴展記錄器與LogBack框架一起使用。 我找不到任何機制使它工作。 直接用法拋出ClassCastException (這很明顯,因為它期望使用名稱為Logger的類並獲取AppLogger )。

通過編寫橋實現並提供自定義的StaticBinder類,我可以使此擴展接口與Log4J 1.xLog4J 2.x StaticBinder 對於LogBack,此橋類( StaticBinder )是logback-classiclogback-classic JAR文件的一部分,因此我不確定如何編寫自己的活頁夾和橋LogBack。

AppLogger界面如下所示:

public interface AppLogger extends org.slf4j.Logger {
    public void myOwnMethod(String message, Object... args);
}

如果有人提供任何想法,請感激。

到1.7.15版為止,SLF4J綁定機制曾經非常非常非常簡單。 在1.7.15版本之后,隨着事件重播的引入,該機制變得有些復雜,但是核心綁定的想法仍然很簡單。 此外,對於那些不會被打擾的人,可以安全地省略對事件重播的任何支持。

有關slf4j綁定的示例,請參見slf4j-nop或slf4j-simple模塊中的代碼。

然而,從我收集,你想使用擴展記錄器API,在這種情況下,你應該看看LoggerWrapperXLoggerXLoggerFactory類SLF4J-EXT模塊中。 您應該能夠輕松模擬AppLogger界面的相同過程。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM