当应用程序实例终止时,Kafka Streams指标将重置

时间:2019-02-14 16:04:08

标签: apache-kafka-streams

我们当前正在运行同一流应用程序的两个实例。两项都在运行时正确报告了指标。当我们终止其中一个流应用程序时,正在运行的实例上的所有指标都将重置为0。为什么?这是预期的行为吗?

我们正在使用KafkaStreams#allMetadata()从远程应用程序实例获取指标,并使用KafkaStreams#metrics()获取本地指标数据。我知道这不是时机,因为样本数量设置为大量,因此它们不会被重置为旧数据。

我们正在使用1.1.1

有关如何从远程应用程序中获取它们的更多详细信息: KafkaStreams#allMetadata()返回StreamsMetadata的列表,其中包含远程应用程序的主机和端口。我们对该主机和我创建的一个休息端点进行了一次休息呼叫。其余端点返回KafkaStreams#metrics()的结果。所有这些都可以。当我的应用程序离开集群时,所有指标都将重置为0。我在jconsole中也可以看到这一点。

1 个答案:

答案 0 :(得分:0)

当应用程序离开集群时,任务将被迁移到其他主机,因此应刷新KafkaStreams#allMetadata()以获取新的端点来查询指标。