我正在运行一个storm集群,它使用log4j进行日志记录。除了标准的基于文件的日志记录之外,我还想添加一个kafka appender。
我的log4j配置文件如下所示:
log4j.rootLogger=INFO, A1
log4j.appender.A1 = org.apache.log4j.DailyRollingFileAppender
log4j.appender.A1.File = /var/log/storm/logs/${logfile.name}
log4j.appender.A1.Append = true
log4j.appender.A1.DatePattern = '.'yyy-MM-dd
log4j.appender.A1.layout = org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} %c{1} [%p] %m%n
log4j.appender.KAFKA=kafka.producer.KafkaLog4jAppender
log4j.appender.KAFKA.Host=<kafka.ip>
log4j.appender.KAFKA.Port=9092
log4j.appender.KAFKA.Topic=storm_log
log4j.appender.KAFKA.SerializerClass=kafka.producer.DefaultStringEncoder
log4j.appender.KAFKA.layout=org.apache.log4j.PatternLayout
log4j.appender.KAFKA.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %c{1} [%p] %m%n
log4j.logger.my.package.name=INFO, KAFKA
一切工作正常,除了kafka appender不使用定义的转换模式,即使定义与文件appender中的定义完全相同,也能正常工作。我该如何改变配置,使Kafkaappender的工作?
1条答案
按热度按时间toe950271#
Kafka0.7版也有同样的问题。
在版本0.7.1中对kafkalog4jappender做了一些更改,升级后,转换模式对我来说运行良好,配置与上面的类似。