首页 > 解决方案 > 当所有 Kafka Broker 不可用时,Log4j2 kafka appender 故障转移处理?

问题描述

我正在使用 Log4j2 Kafka appender 将我的所有应用程序日志发送到 Kafka,并且它可以工作。但是在某种情况下,当我故意关闭代理时,应用程序会挂起,并且 kafka appender 会继续重试建立连接。

当代理关闭时,如何停止写入 Kafka?并在可用后恢复?

以下是我使用的 appender 配置。

<Kafka name="KafkaServiceStatInfo" topic="testKafkaLogs">
                <PatternLayout pattern="%m"/>
            <Property name="bootstrap.servers">localhost:9092</Property>
            <Property name="acks">0</Property>
        </Kafka>
        <Async name="Async">
            <AppenderRef ref="KafkaServiceStatInfo"/>
        </Async>

标签: apache-kafkalog4j2

解决方案


推荐阅读