我使用log4j2来记录我的程序。在我的xml配置文件中,我有这个附件:
<RollingFile name="General" fileName="log/logs/giornale.log" filePattern="log/logs/log-%d{yyyyMMdd}.log">
<PatternLayout>
<Pattern>%d{HH:mm:ss,SSS} [%t] %-5level %logger{-1} - %msg%n</Pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy />
</Policies>
</RollingFile>
我需要的是一种配置它的方法,这样它就会自动删除所有超过n天的文件。
我已经找到了一些这样的问题,但是它们没有帮助,因为它们没有说如何通过xml配置来完成它。
要使简短地说,我应该在上面的片段中指示像“MaxBackupIndex”这样的参数吗?或者我应该使用哪个其他参数(我可以把它放在哪里)?
您可以将DefaultRolloverStrategy添加到xml中,如下所示:-
<RollingFile name="General" fileName="log/logs/giornale.log" filePattern="log/logs/log-%d{yyyyMMdd}.log">
<PatternLayout>
<Pattern>%d{HH:mm:ss,SSS} [%t] %-5level %logger{-1} - %msg%n</Pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy />
</Policies>
<DefaultRolloverStrategy max="<specify maximum archive count>"/>
</RollingFile>
此外,您还可以对日志使用基于时间和大小的滚动组合,使用-
<Policies>
<TimeBasedTriggeringPolicy interval="6" modulate="true"/>
<SizeBasedTriggeringPolicy size="250 MB"/>
</Policies>
…一个使用RollingFileAppender和基于时间和大小的触发策略的示例配置,将在同一天(1-7)创建最多7个存档,这些存档存储在基于当前年份和月份的目录中,并将使用gzip压缩每个存档,当小时可被6整除时,将每6小时滚动一次
在“RollingFile”标记下添加以下标记。删除“策略”标记。你可能不需要它。
<DefaultRolloverStrategy>
<Delete basePath="log/logs" maxDepth="2">
<IfLastModified age="60d" />
</Delete>
</DefaultRolloverStrategy>
使用此配置,将自动删除超过60天的日志。
有关更多配置信息,请参阅日志4J2文档。
我希望由log4j2创建的日志文件在其文件名中包含日期模式,包括当前活动文件。也就是说,如果今天的日期是2016-12-15,我希望当前日志文件是lager-2016-12-15.log。当日期改变时,我希望创建一个名为lager-2016-12-16.log的新文件。 使用,我无法使当前活动日志文件的文件名中具有日期模式。我的log4j2.xml: 使用此配置,翻转时的复制被搞乱了。从fileN
我最近一直在使用log4j2,遇到了一个问题。发生翻转时,活动日志文件保留其日志。是否可以清除日志文件,以便滚动的文件将只保留日志在名称中指定的时间段?
在log4j中,我可以这样指定文件: 但是在log4j2中,我不知道如何在一个句子中重写
本文向大家介绍Tomcat日志文件定时清理备份的脚本,包括了Tomcat日志文件定时清理备份的脚本的使用技巧和注意事项,需要的朋友参考一下 以下脚本主要备份的日志文件为tomcat的catalina.out、localhost_access_log.yyyy-mm-dd.log日志和项目的日志文件,其中项目的日志文件格式为"projectname-yyyy-mm-dd.log",以下为备份脚本,具
我有将日志保存到文件配置,但日志会附加到现有内容。我想创建总是新的文件。我怎么能那样做? 我的log4j2.xml:
我按照这里的教程SpringEureka教程创建了一个基本的Eureka注册表jar应用程序。下一步是将日志记录更改为log4j2,这样我就可以使用Spring log4j2指南中的指南获得一个滚动文件。 我遇到的问题是,当我运行应用程序时,没有抛出错误,但是 eureka服务器日志仍会输出到控制台 已创建自定义日志输出文件“eureka.log”,但该文件为空 我编写的任何自定义日志,例如