小编use*_*n87的帖子

log4j:使用TimeBasedRollingPolicy使用DailyRollingFileAppender将日志滚动到.gz文件

当前系统按预期工作,日志文件按小时滚动一次,具体如下:

log4j.appender.oozie=org.apache.log4j.DailyRollingFileAppender
log4j.appender.oozie.DatePattern='.'yyyy-MM-dd-HH
log4j.appender.oozie.File=${oozie.log.dir}/oozie.log
log4j.appender.oozie.Append=true
log4j.appender.oozie.layout=org.apache.log4j.PatternLayout
log4j.appender.oozie.layout.ConversionPattern=%d{ISO8601} %5p %c{1}:%L - %m%n
Run Code Online (Sandbox Code Playgroud)

我可以理解,使用TimeBasedRollingPolicy可以使用RollingFileAppender(基于文件大小滚动)将日志文件直接滚动到压缩文件(.gz或.zip)中.我正在使用DailyRollingFileAppender(基于时间的滚动)并希望用它实现压缩.我按如下方式修改了我的属性.但那不起作用.

log4j.appender.oozie=org.apache.log4j.DailyRollingFileAppender
log4j.appender.oozie.DatePattern='.'yyyy-MM-dd-HH
log4j.appender.oozie.File=${oozie.log.dir}/oozie.log
log4j.appender.oozie.Append=true
log4j.appender.oozie.RollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy
log4j.appender.oozie.RollingPolicy.FileNamePattern=foo.%d{yyyy-MM-dd-HH}.gz
log4j.appender.oozie.layout=org.apache.log4j.PatternLayout
log4j.appender.oozie.layout.ConversionPattern=%d{ISO8601} %5p %c{1}:%L - %m%n
Run Code Online (Sandbox Code Playgroud)

任何指针都将受到高度赞赏.以下是一些相关链接.

在log4j中配置RollingFileAppender

http://logging.apache.org/log4j/companions/extras/apidocs/org/apache/log4j/rolling/TimeBasedRollingPolicy.html

log4j

10
推荐指数
1
解决办法
2万
查看次数

标签 统计

log4j ×1