Kafka Consumer - JMX Properties

时间:2016-06-13 21:38:23

标签: apache-kafka jmx

我在端口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]+)

有什么想法吗?

3 个答案:

答案 0 :(得分:4)

您正在侦听的JMX PORT是代理端口。但是kafka.consumer的Mbean:是消费者的jvm指标。因此,如果你有另一个消耗主题的JVM,你可以看到kafka.consumer Mbeans。

答案 1 :(得分:1)

ConsumerLag an overloaded term in Kafka,它代表:

  1. 消费者指标:计算消费者当前日志偏移量与生产者当前日志偏移量之间的差异。如果您使用基于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中,您必须为每个群集启用此功能:

      

    []调查消费者信息(不推荐给大量消费者使用)

  2. 经纪商的指标:代表分区领导者及其粉丝之间的偏移差异。您可以在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