2017-11-09 14 views
2

제목에 Log4j2를 사용하여 5 개 이하의 로그 파일을 생성하려고합니다. .properties 파일을 사용하고 싶습니다. 여기에 지금까지 무엇을 가지고 :Log4j가 5 개 이상의 로그 파일을 생성하지 못하도록하십시오.

appender.rollingAppender.strategy.type=DefaultRolloverStrategy 
appender.rollingAppender.strategy.max=5 

그러나 그것은 작동하지 않습니다 :

rootLogger.level=INFO 
property.filename=/data/standalone/ldap_proxy_server/logs/ldap_server_proxy.log 

appenders=rollingAppender 

appender.console.type=Console 
appender.console.name=STDOUT 
appender.console.layout.type=PatternLayout 
appender.console.layout.pattern=%d{dd/MM/yyyy HH:mm:ss} %5p %c{20} > %m%n 

appender.rollingAppender.type=RollingFile 
appender.rollingAppender.name=File 
appender.rollingAppender.fileName=/data/standalone/ldap_proxy_server/logs/ldap_server_proxy.log 
appender.rollingAppender.filePattern=/data/standalone/ldap_proxy_server/logs/ldap_server_proxy.log.%d{yyyy-MM-dd} 
appender.rollingAppender.layout.type=PatternLayout 
appender.rollingAppender.layout.pattern=%d{dd/MM/yyyy HH:mm:ss} %5p %c{20} > %m%n 
appender.rollingAppender.policies.type=Policies 
appender.rollingAppender.policies.time.type=TimeBasedTriggeringPolicy 
appender.rollingAppender.policies.time.interval=1 
appender.rollingAppender.policies.time.modulate=true 
appender.rollingAppender.policies.size.type=SizeBasedTriggeringPolicy 
appender.rollingAppender.policies.size.size=50MB 
appender.rollingAppender.strategy.type=DefaultRolloverStrategy 
appender.rollingAppender.strategy.max=5 

rootLogger.appenderRefs=rollingAppender,console 

rootLogger.appenderRef.console.ref=STDOUT 
rootLogger.appenderRef.rollingAppender.ref=File 

나는이 두 줄이 마법을한다는 것을 생각했다. 내가 뭘 잘못하고있어?

답변

2

아니요, 이전 로그 파일을 삭제하도록 지정해야한다고 생각합니다. 회전 후 파일이 5 이상이됩니다.

구성 파일의 줄 아래에 따라 롤오버 전략을 변경해보십시오 -

appender.rollingAppender.strategy.type = DefaultRolloverStrategy 
appender.rollingAppender.strategy.delete.type = Delete 
appender.rollingAppender.strategy.delete.basePath = /data/standalone/ldap_proxy_server/logs/ 
appender.rollingAppender.strategy.delete.maxDepth = 1 
appender.rollingAppender.strategy.delete.ifAccumulatedFileCount.type = IfAccumulatedFileCount 
appender.rollingAppender.strategy.delete.ifAccumulatedFileCount.exceeds = 5 

당신은 또한 당신으로 존재할 수 5 일 이상하지만,이 경우, 5 또는 5 개 이상의 파일에서 오래된 파일을 삭제하도록 지정할 수 있습니다 SizeBasedTriggeringPolicy도 사용하고 있습니다.