简体   繁体   English

防止Log4j创建超过5个日志文件

[英]Prevent Log4j create more than 5 log files

As the title says, I want to create no more than 5 log files with Log4j2. 如标题所示,我想用Log4j2创建不超过5个日志文件。 Take in mind that I want to use a .properties file. 请记住,我要使用.properties文件。 Here is what I have so far: 这是我到目前为止的内容:

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

I thought that this two lines does the magic: 我以为这两行是神奇的事情:

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

But it's not working. 但这不起作用。 What I'm doing wrong? 我做错了什么?

I think you have to specify to delete old log files if no. 我认为您必须指定删除旧日志文件(如果没有)。 of files become more than 5 after rotation. 旋转后文件数超过5。

Try changing rollover strategy as per below lines in your configuration file - 尝试根据配置文件中的以下行更改过渡策略-

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

You can also specify to delete files older than 5 days but in that case, 5 or more than 5 files can exist as you are using SizeBasedTriggeringPolicy also. 您还可以指定删除5天以上的文件,但是在这种情况下,当您同时使用SizeBasedTriggeringPolicy可以存在5个或5个以上的文件。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM