log4j2 按日期分割,自动清理历史文件
2024-10-19 22:20:45
方式一:定义CronTriggeringPolicy
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="warn" name="MyApp" packages="">
<Properties>
<Property name="baseDir">logs</Property>
</Properties>
<Appenders>
<RollingFile name="RollingFile" fileName="${baseDir}/app.log"
filePattern="${baseDir}/$${date:yyyy-MM}/app-%d{yyyy-MM-dd}.log.gz">
<PatternLayout pattern="%d %p %c{1.} [%t] %m%n" />
<CronTriggeringPolicy schedule="0 0 0 * * ?"/>
<DefaultRolloverStrategy>
<Delete basePath="${baseDir}" maxDepth="2">
<IfFileName glob="*/app-*.log.gz" />
<IfLastModified age="60d" />
</Delete>
</DefaultRolloverStrategy>
</RollingFile>
</Appenders>
<Loggers>
<Root level="error">
<AppenderRef ref="RollingFile"/>
</Root>
</Loggers>
</Configuration>
方式二:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="warn" name="MyApp" packages="">
<Properties>
<Property name="baseDir">logs</Property>
</Properties>
<Appenders>
<RollingFile name="RollingFile" fileName="${baseDir}/app.log"
filePattern="${baseDir}/$${date:yyyy-MM}/app-%d{yyyy-MM-dd-HH}-%i.log.gz">
<PatternLayout pattern="%d %p %c{1.} [%t] %m%n" />
<Policies>
<TimeBasedTriggeringPolicy />
<SizeBasedTriggeringPolicy size="250 MB"/>
</Policies>
<DefaultRolloverStrategy max="100">
<!--
Nested conditions: the inner condition is only evaluated on files
for which the outer conditions are true.
-->
<Delete basePath="${baseDir}" maxDepth="2">
<IfFileName glob="*/app-*.log.gz">
<IfLastModified age="30d">
<IfAny>
<IfAccumulatedFileSize exceeds="100 GB" />
<IfAccumulatedFileCount exceeds="10" />
</IfAny>
</IfLastModified>
</IfFileName>
</Delete>
</DefaultRolloverStrategy>
</RollingFile>
</Appenders>
<Loggers>
<Root level="error">
<AppenderRef ref="RollingFile"/>
</Root>
</Loggers>
</Configuration>
最新文章
- Windows系统安装Oracle 11g客户端
- shader学习路线
- jad 反编译 jar包
- SQL Server 遇到 Automation服务器不能创建对象
- ### CUDA
- 启动php-fpm报错:please specify user and group other than root
- City Tour
- PostGreSQL数据库安装教程
- UIScrollerview的contentsize设置
- Beta敏捷冲刺每日报告——Day4
- (二十四)监听键盘的通知和键盘弹出隐藏的View移动
- CoordinatorLayout
- SQL强化练习(面试与学习必备)
- 记一次tomcat7.0版本启动项目失败问题
- Android 网络交互之下载断点续传
- MongoDB数据库连接失败
- HTML标签 select 里 动态添加option
- zsh + oh-my-zsh 默认shell
- POJ1474:Video Surveillance——题解
- 自制MVC框架的插件与拦截器基础