首页 > 解决方案 > 在日志 4j 的 RollingFileAppender 中基于每月和日志保留 30 天的日志轮换

问题描述

您好需要配置 RollingFileAppender 以每天轮换日志并删除 30 天前的旧日志文件,可以帮助我使用 log4j.prepoerties 进行此配置。我想从 DailyRollingFileAppender 切换到 RollingFileAppender,因为 DailyRollingFileAppender 没有删除的灵活性

标签: apache-kafkalog4jrollingfileappender

解决方案


切换到RollingFileAppender是很常见的事情。但是,您不能将其配置为保留日志 30 天。RollingFileAppender限制由大小设置。您可以指定每个日志文件的大小以及要保留的数量。例如:

log4j.appender.kafkaAppender=org.apache.log4j.RollingFileAppender
log4j.appender.kafkaAppender.File=${kafka.logs.dir}/server.log
log4j.appender.kafkaAppender.MaxFileSize=50MB
log4j.appender.kafkaAppender.MaxBackupIndex=10
log4j.appender.kafkaAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.kafkaAppender.layout.ConversionPattern=[%d] %p %m (%c)%n

这将保留多达 10 个 50MB 的文件。虽然您无法控制日志将涵盖的时间范围,但您可以确定日志不会填满您的磁盘。


推荐阅读