2013-06-11 45 views
2

我正在使用log4j登錄到我的java程序中。我需要根據日期在路徑中記錄內容。例如,我需要一個錯誤日誌作爲文件名「 error.log「,其日誌日期爲11/June/2013時,其路徑應爲」log/13/6/11/error.log「。如何根據上述要求創建log4j屬性文件?log4j如何登錄到具有根據日期路徑的文件

回答

1

Log4j提供了一個能工作的DailyRollingFileAppender。您可以配置爲結束當前文件並根據日期和/或時間開始記錄到新文件。

log4j.properties看起來是這樣的(在其他事情一樣模式

log4j.appender.Appender2=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.Appender2.File=app.log 
log4j.appender.Appender2.DatePattern='.'yyyy-MM-dd 

這已經推出昨天的文件app.log.2013-06-10而今天的文件將是app.log

要命名文件作爲log/13/6/11/error.log可能的,因爲文件名不能包含路徑分隔符。您可以考慮像app.log_13-6-11_error.log作爲

log4j.appender.Appender2.File=app.log 
log4j.appender.Appender2.DatePattern='_'yy-MM-dd'_error.log' 

您當前的文件將被命名爲app.log

+0

如何指定路徑爲yy/mm/dd/error.log? – sajith

+0

@sajith文件名不能包含路徑分隔符。檢查更新。 –

+0

我需要保存在給定的路徑,而不是文件名 – sajith

0

這不支持開箱即用afaik。您可以編寫自己的appender或使用由cron作業觸發的簡單腳本來移動文件。

相關問題