log4j特定的日志输出到特定的文件中

本文介绍了如何使用log4j将特定的日志内容输出到不同的文件中,包括两种配置方式:properties文件配置和XML方式配置。这种需求常见于需要将常规业务日志和特殊格式日志分开存储,例如file1.log用于常规日志,file2.log用于特殊格式的日志,后者可能被Flume收集到HDFS。文章还提及了相应的Java代码调整。

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

log4j特定的日志输出到特定的文件中

某些情况下会有这样的需求,同一个类中有些日志要输出到不同的文件中:

比如我遇到的一个场景:
正常的业务日志要输出到file1.log中,这样的日志可能保留15天、30天就自动丢弃了。还有一个业务日志要纪录到file2.log中(这里的日志有特殊的格式要求),最终被flume收集到hdfs上。

如何配置呢,两种方式任选其一
1、properties文件配置方式:

log4j.rootLogger=INFO,A2
log4j.appender.console.Encoding=UTF-8

log4j.appender.A2=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A2.File=/opt/web/xxx/xxx_file1.log
log4j.appender.A2.DatePattern='.'yyyy-MM-dd
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.sss} %-5p [%t] %l - %m%n
        

log4j.logger.couponLogger=INFO,couponLogger
log4j.appender.couponLogger=org.apache.log4j.DailyRollingFileAppender
log4j.appender.couponLogger.File=/opt/xxx/xxx_provide_coupon.log
log4j.appender.couponLogger.DatePattern='.'yyyy-MM-dd
log4j.appender.couponLogger.layout=org.apache.log4j.PatternLayout
log4j.appender.coupon
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值