Apache kafka Kafka Streams应用程序度量

Apache kafka Kafka Streams应用程序度量,apache-kafka,apache-kafka-streams,Apache Kafka,Apache Kafka Streams,我目前正在尝试公开Kafka Streams在Dropwizard应用程序上现成的JMX指标。到目前为止,我有一个指标如预期般工作——“记录消费率” 我还试图让“记录滞后”指标起作用,我使用以下代码公开它- mBeanServer.queryMBeans(null, null).stream() .filter(o -> o.getObjectName().getDomain().equals("kafka.consumer"))

我目前正在尝试公开Kafka Streams在Dropwizard应用程序上现成的JMX指标。到目前为止,我有一个指标如预期般工作——“记录消费率”

我还试图让“记录滞后”指标起作用,我使用以下代码公开它-

        mBeanServer.queryMBeans(null, null).stream()
            .filter(o -> o.getObjectName().getDomain().equals("kafka.consumer"))
            .filter(o -> o.getObjectName().getKeyProperty("type") != null &&
                         o.getObjectName().getKeyProperty("type").equals("consumer-fetch-manager-metrics"))
            .filter(o -> o.getObjectName().getKeyProperty("topic") != null)
            .filter(o -> o.getObjectName().getKeyProperty("partition") != null)
            .mapToInt(mBean -> tryRegisterJmxMetric(registry, mBean, "partition-lag", "records-lag"))
            .sum();
因此,对第一个指标执行类似于上面的操作,我们可以看到预期的消耗率,但是当我们查询Dropwizard metrics端点时,滞后指标似乎总是保持在0.0。当我使用CLI工具描述消费者组时,我可以看到它的滞后。tryRegisterJmxMetric方法只是使用首选名称“partition lag”向MetricRegistry实例注册度量

有人知道我是否还遗漏了什么,或者为什么度量从0.0增加到0.0