我想通过log4j记录风暴日志并将日志发送到kafka。结果是kafka STORM可以自己记录日志log4j,但不能将日志发送到kafka

时间:2019-09-16 06:55:13

标签: java apache-kafka log4j apache-storm

我正在使用ubuntu14.6,kafka_2.11-2.20,zookeeper-3.4.14,storm-1.2.3。当我使用LocalCluster模式可以将日志发送到kafka时,我可以通过kafka使用者获取日志。但是我倾向于按集群模式提交拓扑,它不能被kafka使用者获取日志。 这是我的log4j配置

<configuration status="INFO">
    <appenders>
        <Kafka name="kafkaLog" topic="connect-test" ignoreExceptions="false">
        <PatternLayout pattern="%m%n" />
                <Property name="bootstrap.servers">192.168.23.165:9092</Property>
                <Property name="max.block.ms">2000</Property>
        </Kafka>

    </appenders>

    <loggers>
        <logger level = "info" name= "BasicDemo" additivity="false">>
            <appender-ref ref="kafkaLog"/>
        </logger>
        <root level="info">
            <appender-ref ref="kafkaLog"/>
        </root>
        <logger name="org.apache.kafka" level="INFO"/>
    </loggers>
</configuration>

有一个问题log4j可以将分发系统日志发送到kafka吗?

1 个答案:

答案 0 :(得分:0)

我认为这个问题确实与Storm无关。我也不认为问题与log4j相同。您可能需要检查您的分布式工作机是否可以真正连接到Kafka。

还请记住,您将要将log4j配置放入storm / log4j2 / worker.xml。