2012-06-04 2 views
0

로그 파일이 하나뿐입니다. 이전 로그가 삭제됩니다. 지난 로그 파일을 백업으로 원합니다. 이전 내용을 대체해서는 안되며 이전 내용을 별도의 파일에 보관해야합니다. 다음은 내 log4j.properties 사용중인 펜더있는로그 파일에서 오래된 로그 세부 정보를 얻는 방법은 무엇입니까?

# Log4j configuration file. 
log4j.rootCategory=DEBUG, A1 
# Available levels are DEBUG, INFO, WARN, ERROR, FATAL 

# 
# A1 is a ConsoleAppender 
# 

log4j.appender.A1 = org.apache.log4j.RollingFileAppender 
log4j.appender.A1.File = C:/LogInfo/logfile.log 
log4j.appender.A1.MaxFileSize = 100MB 
log4j.appender.A1.MaxBackupIndex=10 
log4j.appender.A1.layout = org.apache.log4j.PatternLayout 
log4j.appender.A1.layout.ConversionPattern = [%d] %C %M %L - %m%n 
log4j.appender.A1.Threshold = DEBUG 

# 
# A2 is a DailyRollingFileAppender 
# 
log4j.appender.A2=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.A2.file=C:/LogInfo/logfile.log 
log4j.appender.A2.datePattern='.'yyyy-MM-dd 
log4j.appender.A2.append=true 
log4j.appender.A2.layout=org.apache.log4j.PatternLayout 
log4j.appender.A2.layout.ConversionPattern=[%d] %C %M %L - %m%n 

# 
# 
# A3 is a RollingFileAppender - Should be used in production only 
# 
log4j.appender.A3=org.apache.log4j.RollingFileAppender 
log4j.appender.A3.file=C:/LogInfo/logfile.log 
log4j.appender.A3.append=true 
log4j.appender.A3.MaxBackupIndex=5 
log4j.appender.A3.MaxFileSize=10MB 
log4j.appender.A3.layout=org.apache.log4j.PatternLayout 
log4j.appender.A3.layout.ConversionPattern=[%d] %C %M %L - %m%n 
+0

당신이 직면 한 문제는 무엇입니까? 이 구성은 파일의 백업을 유지합니다. 프로그램을 재실행하거나 재배포 할 때 파일이 삭제 될 수 있습니다. – sudmong

+0

현재 파일이 하나뿐입니다. 다른 파일이 없습니다. – Edward

+0

현재 파일이 가득 차면 생성됩니다. 예 : log4j.appender.A1.MaxFileSize 또는 FileAppender 유형에 따라 하루 10MB 이후. – sudmong

답변

0

가 달려 파일입니다 - 아마 A2 또는 A3처럼 보인다. 그런 경우 MaxBackupIndex의 값을 늘려야합니다. A3의 경우 5로 설정되어 백업 파일을 5 개까지 보관할 수 있습니다. A2의 경우이 속성은 정의되어 있지 않으므로 기본 값인 1을 사용하여 백업 파일을 최대 1 개까지 유지합니다.

이 값을 더 높은 값, 예를 들어 1000으로 설정하면 최대 크기가 각각 10MB (A3에 정의 됨) 인 백업 파일을 최대 1000 개까지 유지할 ​​수 있습니다.

log4j.appender.A2.MaxBackupIndex=1000 
log4j.appender.A3.MaxBackupIndex=1000 

편집 : 죄송합니다. 첫 줄을 읽으십시오. 당신이 A1 appender를 사용하고있는 것처럼 보입니다. 그리고 그것은 각각 100MB의 10 개의 파일까지 유지할 ​​것입니다. 더 오래된 로그를 유지하려면이 값을 늘릴 수 있습니다.

+0

나는 2000mb까지 파일 크기를 벌었 다. 2000mb까지 로그를 쓰고 그 후에 파일이된다. 0kb 그리고 다시 witing 시작합니다. 그것은 2000mb 후에 새 파일을 만듭니다. 나는 파일의 백업을 받고 있지 않습니다. – Edward

+0

시도해보십시오 log4j.appender.A1.append = true – kjp

관련 문제