log4j 動態改變日誌的輸出路徑

2022-09-20 00:15:14 字數 679 閱讀 9898

客戶有客戶端多台,每個客戶端有自己的唯一編號。輸出的日誌要根據每個客戶端的編號生成,例如10001_demo.log,10002_demo.log

1.網上給出的第一種方法是:

system.setproperty("log.dir","/home/..."),來設定變數值。

但我測試了多次,這樣是不起作用的,可能是我自己配置的問題。

2.第二種方法

,親測可用:

1    logger log = logger.getlogger(zhzhcxctl.class);//

獲取log物件

重新設定輸出日誌的路徑和檔名

5   log.info("index.........");

但是這樣的話,每次呼叫log.info()方法之前都要新增第2--4行這幾段**,這樣寫**冗餘比較大。或許這時可以想到用**的方法,但是如果**了,這時log.info()出現的地方就不是原來的那個類裡面了,而是現在這個**的類了。這樣出現的問題就是log4j.properties配置檔案中定義的輸出格式%c列印的類的名字永遠都是**的那個類了,就永遠看不到到底是哪個類呼叫的log.info方法。所以這種方法也是不可行的。

protected

void}}

if(shouldflush(event))

}

Log4j動態輸出日誌

0 將日誌統一輸出到以當前logger的別名為檔名的檔案中,如配置為 log4j.category.package1 info package1,日誌就都輸出到package1.log中 1 按下級包分別輸出麼各自的檔案中 如配置為 log4j.category.package1 info pack...

Log4j日誌輸出

配置檔案示例 參考 link.log4j 的日誌輸出控制檔案,主要由三個部分構成 是專門用於控制日誌輸出的。其主要進行三方面控制 日誌屬性檔案由日誌附加器與根日誌組成 log4j 採用類似 c 語言中的 printf 函式的列印格式格式化日誌資訊 定義日誌輸出級別info和輸出位置控制台,檔案 lo...

log4j日誌輸出教程

log4j是幫助開發人員進行日誌輸出管理的api類庫。它最重要的特點就可以配置檔案靈活的設定日誌資訊的優先順序 日誌資訊的輸出目的地以及日誌資訊的輸出格式。log4j除了可以記錄程式執行日誌資訊外還有一重要的功能就是用來顯示除錯資訊。很多程式設計師經常會使用system.out.println語句輸...