我已經使用SLF4j作爲我的日誌框架,由log4j支持。我的問題是,我正在尋找一種方法來在運行時更改記錄器的日誌記錄級別。如何在運行時更改slf4j級別?
據我所知,slf4j不允許直接通過自己的API,因此,我必須直接訪問日誌記錄提供程序。就我個人而言,我認爲這是slf4j的一個巨大缺陷。所以現在我的問題是我怎樣才能通過slf4j通過編程方式確定我正在使用哪個提供程序?使用slf4j的最大目的是使您成爲提供者不可知論者 - 您可以輕鬆地在您喜歡的日誌記錄系統之間切換,而無需重新編碼任何內容。但是現在,如果我必須直接調用log4j,那麼我就失去了這種能力。
至少,我希望能夠確定我是否使用log4j作爲提供程序,如果是,則允許用戶切換日誌級別。
如果我做LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME)
,結果是org.slf4j.impl.Log4jLoggerAdapter
的一個實例,甚至不是org.apache.log4j.Logger
(正如我希望/預期的那樣)。
有沒有什麼辦法可以找到答案?
感謝, 埃裏克
請參閱:[如何找到哪個庫slf4j已綁定自己?](http://stackoverflow.com/questions/10505418) –
謝謝。我不確定爲什麼我錯過了原來的搜索。 –