2010-11-03 173 views
0

我遇到了Alfresco的問題。它每天都會生成日誌文件。我想根據日期自動刪除日誌文件。我的服務器安裝在Windows中。如何自動刪除日誌文件?

你能提供這方面的建議嗎?

回答

1

最好的方法是編寫自己的小工具,並將其註冊爲「預定任務」,以便在當天的預定時間運行。
你也可以註冊一項服務,但我覺得這將是一個矯枉過正。

0

我建議您儘可能減少日誌記錄級別。在每個露天的應用程序(alfresco/WEB-INF/classes/log4j.properties和share/WEB-INF/classes/log4j.properties)中都有一個log4j.properties文件 - 記錄日誌會影響露天的性能。

此外,您應該能夠完全禁用日誌記錄。

2

Alfresco正在使用DailyRollingFileAppender,並且它被配置爲每天滾動日誌文件。

###### File appender definition ####### 
log4j.appender.File=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.File.File=alfresco.log 
log4j.appender.File.Append=true 
log4j.appender.File.DatePattern='.'yyyy-MM-dd 
log4j.appender.File.layout=org.apache.log4j.PatternLayout 
log4j.appender.File.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c] %m%n 

相反,你可以使用RollingFileAppender當它達到一定的規模,並與該附加器還可以定義備份的最大數量,其推出的日誌文件。

log4j.appender.File=org.apache.log4j.RollingFileAppender 
log4j.appender.File.MaxBackupIndex=10 
... 
... 

根據上面的配置,appender只存儲最後10個備份。順便說一句,它也比DailyRollingFileAppender更安全。

根據log4j javadoc;

DailyRollingFileAppender被發現存在同步問題和數據丟失。

+0

你離開了有關標準DailyRollingFileAppender的部分: http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/DailyRollingFileAppender.html _DailyRollingFileAppender已觀察到展示同步問題和數據丟失。 log4j的演員同伴包括應考慮新的部署和替代的文檔中的org.apache.log4j.rolling.RollingFileAppender_ 討論** Apache的額外伴侶Apache的log4j的** 的http://日誌記錄。 apache.org/log4j/companions/extras/download.html – 2012-10-20 19:21:14