Log4j 生成动态年月日log文件名

本文介绍了如何配置Log4j以根据日期生成动态的日志文件名,避免单个日志文件过大导致查找困难。配置后需要注意,首次启动或当天无日志时可能不会立即显示日期后缀,需等待次日或手动调整系统时间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

将log文件输出在同一个文件内,如果log数量庞大,查找起来将十分不便,所以一般我们都是将log分日期存储的。配置如下:

log4j.rootLogger = info,console,log,error

log4j.appender.console = org.apache.log4j.ConsoleAppender
log4j.appender.console.Target = System.out
log4j.appender.console.layout = org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [%p] method:%l%m%n

log4j.appender.log = org.apache.log4j.DailyRollingFileAppender
log4j.appender.log.File = D://logs//log.log
log4j.appender.file.DatePattern='.'yyyy-MM-dd
log4j.appender.log.Append = true
log4j.appender.log.Threshold = INFO 
log4j.appender.log.layout = org.apache.log4j.PatternLayout
log4j.appender.log.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [%p] method:%l%m%n

log4j.appender.error = org.apache.log4j.DailyRollingFileAppender
log4j.appender.error.File =D://logs//error.log
log4j.appender.file.DatePattern='.'yyyy-MM-dd
log4j.appender.error.Append = true
log4j.appender.error.Threshold = ERROR 
log4j.appender.error.layout = org.apache.log4j.PatternLayout
log4j.appender.error.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [%p] method:%l%m%n

 注意:通过上述配置后测试发现log文件依然没有日期后缀, 其原因是当前日志默认为当天,当天将不显示日期信息,第二天当新的日志产生时将会正常显示前一天的日志文件。如果当天没有日志,将不存储空文件。

ps 想立马见效的话,可以手动修改系统时间。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值