Log4j動態日誌配置切換並立即生效

2021-07-09 18:45:58 字數 664 閱讀 3184

在開發與生產環境中,我們有時候需要對日誌的配置進行動態切換,要除錯、監控和檢查系統的執行時資訊。

一般有兩種方法

1、通過 log4j的 log4jconfiglistener 在啟動時開啟定時器進行定時載入配置檔案 

2、通過 jmx 動態控制 

簡單介紹一下上面兩種方法:

1、通過 log4j的 log4jconfiglistener,實現方法比較簡單,原理是需要在後台開啟乙個監聽執行緒,定時掃瞄,然後來定時工作.

實現方法如下:

/** 

* 裝載log4j配置檔案

*/

public static void load()

2、通過 jmx 動態控制的則必須供乙個管理的埠,不僅有可能埠被占用(當然有個 workaround 來解決它),還有存在防火牆等等需要配置這個管理埠進行對外暴露等等。 

雖然上述兩種方法存在著一些不足,但是這兩種方法在特定的場合下,都可以很好地來利用它進行完美地工作。 

現在,利用它進行封裝與擴充套件,我們可以巧妙地進行定製,並通過 web console 介面來更方便地進行動態切換配置資訊,而且不需要重新啟動正在執行中的應用程式。 

log4j日誌配置

1 配置根logger 1 首先在classpath下尋找自己的配置檔案commons logging.properties,如果找到,則使用其中定義的 log實現類 2 如果找不到commons logging.properties檔案,則在查詢是否已定義系統環境變數 org.apache.com...

log4j日誌配置

1 log4j可以為程式新增日誌,首先匯入log4j 1.2.16.jar包 2 在src目錄下新增log4j.properties 設定級別和目的地 debug級別,serverdailyrollingfile和stdout兩個目的地 log4j.rootlogger debug,serverda...

log4j日誌配置

log4j日誌配置 1 配置根logger level 日誌的級別 debug debug info warn,error四種,分別對應logger類的四種方法 debug object message info object message warn object message error ob...