两个带有不同追加器的记录器

时间:2018-02-18 22:50:06

标签: java logging log4j slf4j

假设我在log4j.xml中配置了两个记录器,如下所示:

<logger name="syslog-logger">
    <level value="info" />
    <appender-ref ref="syslog" />
</logger>

<logger name="kafka-logger">
    <level value="info" />
    <appender-ref ref="KafkaStream"/>
</logger>

如何使用slf4j来获取这两者?像这样:

private final Logger sysLogger = LoggerFactory.getLogger("syslog-logger");
private final Logger kafkaLogger = LoggerFactory.getLogger("kafka-logger");

1 个答案:

答案 0 :(得分:0)

无法按照您希望的方式进行操作,因为每个实例只能获得一个记录器。 你可以做的是,创建另一个记录器,它结合你的两个记录器并添加两个appender:

<logger name="kafka-syslog-logger">
    <level value="info" />
    <appender-ref ref="syslog" />
    <appender-ref ref="KafkaStream"/>
</logger>