我在端口8081上的kafka代理上启用了JMX。当我在jConsole中查看MBean属性时,我只看到kafka.consumer
的以下内容 -
kafka.consumer:type=FetchRequestAndResponseMetrics,name=FetchRequestRateAndTimeMs,clientId=ReplicaFetcherThread-2-413
kafka.consumer:type=FetchRequestAndResponseMetrics,name=FetchResponseSize,clientId=ReplicaFetcherThread-0-413
但是,在Kafka Consumer Metrics下here中标识的其他内容都不是由JMX发出的。
卡夫卡版本#0.8.2.1
我特别感兴趣 -
kafka.consumer:type=ConsumerFetcherManager,name=MaxLag,clientId=([-.\w]+)
有什么想法吗?
答案 0 :(得分:4)
您正在侦听的JMX PORT是代理端口。但是kafka.consumer的Mbean:是消费者的jvm指标。因此,如果你有另一个消耗主题的JVM,你可以看到kafka.consumer Mbeans。
答案 1 :(得分:1)
ConsumerLag 是an overloaded term in Kafka,它代表:
消费者指标:计算消费者当前日志偏移量与生产者当前日志偏移量之间的差异。如果您使用基于Java / Scala的使用者(例如pykafka consumer doesn't export metrics),您可以在JMX bean下找到它:
kafka v0.8.2.x
:
kafka.consumer:type= ConsumerFetcherManager, name=MaxLag, clientId=([-.\w]+)
kafka v0.9+
:
kafka.consumer:type=consumer-fetch-manager-metrics,client-id=([-.w]+)
消费者滞后曾经存储在ZooKeeper(Kafka <= v0.8
)中,较新版本的Kafka有特殊主题__consumer_offsets
来存储每个消费者的滞后。有些工具(例如kafka-manager)可以通过消耗来自该主题的消息并计算滞后来计算滞后。在kafka-manager
中,您必须为每个群集启用此功能:
[]调查消费者信息(不推荐给大量消费者使用)
经纪商的指标:代表分区领导者及其粉丝之间的偏移差异。您可以在JMX bean下找到此指标:
kafka.server:type=FetcherLagMetrics,name=ConsumerLag,clientId=([-.\w]+),topic=([-.\w]+),partition=([0-9]+)
答案 2 :(得分:0)
这可能有助于找到0.8,但我目前正在运行Kafka 0.10经纪人和消费者。使用控制台消费者时,我将jconsole
指向此消费者,并在MBean选项卡上找到:kafka.consumer
- &gt; consumer-fetcher-manager-metric
- &gt; consumer-1
- &gt; Attributes
- &gt; records-max-lag
。