2011-12-20 12 views
6

Używam tego log4j.propertiesLog4j: DailyRollingFileAppender z MaxFileSize Opcji

log4j.rootCategory=Info, A1 
# A1 is a DailyRollingFileAppender 
log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.A1.file=D:/MyWeb.log 
log4j.appender.A1.datePattern='.'yyyy-MM-dd 
log4j.appender.A1.append=true 
log4j.appender.A1.layout=org.apache.log4j.PatternLayout 
log4j.appender.A1.layout.ConversionPattern=%-22d{dd/MMM/yyyy HH:mm:ss} - %m%n 

chcę wyświetlić dzienniki w Dniu Wise zamówienia, więc używam DailyRollingFileAppender. Ale problemem jest to, że plik dziennika obecnie nie może posiadać wiele danych (czyli gdy wiele wniosków są wykonane w tym dniu) to traci dotychczasowe dane dziennika

Próbuję użyć opcji MaxFileSize:

log4j.appender.A1.MaxFileSize=10MB 

Ale na konsolę serwera daje błąd, że właściwość MaxFileSize nie jest obsługiwana.

Proszę mi powiedzieć, czy istnieje inny sposób, w jaki dziennik wydaje się mądry i może przechowywać tyle danych, ile podano.

+0

http://stackoverflow.com/questions/2050615/configuring-multiple-log-files -in-log4j-while-using-categories – nayakam

Odpowiedz

4

Można rozszerzyć klasę FileAppender i zaimplementować niestandardową wersję. Więcej szczegółów DailyRollingFileAppender

+0

Dziękuję bardzo. – Pawan

+2

Cześć Thilakan! Czy znasz jakieś niestandardowe wdrożenie DailyRollingFileAppender z właściwością MaxFileSize? Czy to możliwe, możesz opublikować ten adres URL, jak powyżej. Wielkie dzięki. – Channa

1

Użyj RollingFileAppender, używasz niewłaściwego Appendera!

+2

Ale RollingFileAppender nie pozwala na znacznik czasu nazwy pliku logu. – Alex

4

Można użyć DailyRollingFileAppender z godzinową opcją kopii zapasowej. To będzie przerzucać logi co godzinę.

godzinę Zastosowanie

log4j.appender.A1.datePattern = '' rrrr MM-DD-HH