2013-05-02 110 views
1

我正在使用SLF4J和Log4J進行日誌記錄。到目前爲止,我正在使用xml文件中的log4j配置。我如何在運行時打開/關閉日誌記錄。在運行時打開/關閉日誌

例如一個Web服務打開/關閉日誌,所以我不會有太多的日誌,只會啓用調試目的。

謝謝。

回答

1

log4j記錄器級別可以在運行時更改。將log4j日誌記錄級別更改爲錯誤,以便不記錄所有調試和信息語句。如果應用程序重新啓動,則記錄器級別將更改爲在log4j.xml或log4j.properties中定義的級別。

0

我發現這個禁用log4j的徹底:

org.apache.log4j.LogManager.resetConfiguration(); 
org.apache.log4j.LogManager.getRootLogger().addAppender(new NullAppender()); 

如果仍要記錄,但定向到一個文件,你可以這樣做:

LogManager.resetConfiguration(); 
LogManager.getRootLogger().addAppender(new FileAppender(new PatternLayout(), "log.log"));