除了通过properties,xml等格式的配置文件对log4j进行配置外,log4j还提供了各种接口,可以用代码动态修改log4j的配置,例如给一个logger增加一个appender。方法很简单,就是新建一个appder,然后添加到logger上,示例代码如下:
1 2 3 4 5 6 7 8 9
| KafkaLog4jAppender kafkaAppender = new KafkaLog4jAppender(); kafkaAppender.setBrokerList(broker); kafkaAppender.setTopic(topic); kafkaAppender.setCompressionType("gzip"); kafkaAppender.setSyncSend(false); kafkaAppender.setLayout(new PatternLayout(layout)); kafkaAppender.activateOptions(); logger.addAppender(kafkaAppender); logger.setLevel(Level.INFO);
|
这里以一个kafkaappender做例子,其他的,例如DailyRollingFileAppender等,都是类似的。