Cha*_*nna 2 java logging log4j rollingfileappender
我们是否可以将RollingFileAppender get函数配置为DailyRollingFileAppender.这意味着我想每天备份(旋转)日志文件,使用"最大文件大小"和"日志文件可以保留的最大日期数"(RollingFileAppender相关的maxBackupIndex和maxFileSize属性).问题是,使用DailyRollingFileAppender,我们无法配置maxBackupIndex和maxFileSize属性.谢谢.
不幸的是,这不可能使用log4j的标准API,甚至使用额外的1.
但是,您可以使用Simon Park开发的2级:uk.org.simonsite.log4j.appender.TimeAndSizeRollingAppender
如果您使用基于XML的配置,这是一个示例:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration>
<log4j:configuration>
<appender name="ROLL" class="uk.org.simonsite.log4j.appender.TimeAndSizeRollingAppender">
<param name="File" value="app.log"/>
<param name="DatePattern" value=".HHmmss"/>
<param name="MaxFileSize" value="10KB"/>
<param name="MaxRollFileCount" value="5"/>
<layout class="org.apache.log4j.SimpleLayout" />
</appender>
<root>
<appender-ref ref="ROLL"/>
</root>
</log4j:configuration>
Run Code Online (Sandbox Code Playgroud)
对于此特定示例,生成的文件类似于:
app.log
app.log.155144.1
app.log.155144.2
app.log.155144.3
app.log.155144.4
app.log.155144.5
app.log.155400.1
app.log.155400.2
app.log.155400.3
app.log.155400.4
app.log.155400.5
app.log.161646.1
app.log.161646.2
app.log.161646.3
app.log.161646.4
app.log.161646.5
app.log.161706.1
app.log.161706.2
app.log.161706.3
app.log.161706.4
Run Code Online (Sandbox Code Playgroud)
笔记
pom.xml: <repositories>
<repository>
<id>opencast-public</id>
<url>http://repository.opencastproject.org/nexus/content/repositories/public/</url>
</repository>
...
</repositories>
...
<dependencies>
<dependency>
<groupId>uk.org.simonsite</groupId>
<artifactId>log4j-rolling-appender</artifactId>
<version>20131024-2017</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
...
</dependencies>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4169 次 |
| 最近记录: |