Kafka连接。如何为连接器启用jmx指标

时间:2018-11-30 10:54:48

标签: java apache-kafka monitoring jmx apache-kafka-connect

如何为Kafka连接器启用jmx指标?我正在运行分布式连接。

我通过启用JMX_PORT中的kafka-run-class.sh为Kafka启用了jmx指标。

现在,尽管它已经开始为我提供许多与Kafka相关的指标,但我仍然看不到以下链接中提到的特定于连接器的指标 http://kafka.apache.org/documentation.html#connect_monitoring

以下域可用

  • JMImplementation
  • com.sun.management
  • java.lang
  • java.nio
  • java.util.logging
  • kafka
  • kafka.cluster
  • kafka.controller
  • kafka.coordinator.group
  • kafka.coordinator.transaction
  • kafka.log
  • kafka.network
  • kafka.server
  • kafka.utils

1 个答案:

答案 0 :(得分:2)

询问注释中提到的内容-您确定要连接到正确的Java实例而不是Kafka 经纪人 JMX指标吗?因为kafka.serverkafka.controller都不应该存在于ConnectDistributed进程中。 (您应该查看所连接过程的主类)

只有一个属性JMX_PORT,它由Kafka代理和Kafka连接器(以及Zookeeper,Schema Registry,KSQL等)共享。...如果您不为每个端口使用不同的端口,那么您尝试运行的每个下一个进程将无法启动,说明端口已打开

如果您拥有可用的硬件,或者可以以其他方式隔离单台计算机(Docker或VM)上的组件,那么这是重新映射端口的简便方法。

否则,您需要做类似

的操作
export JMX_PORT=35000 # pick a number 
zookeeper-server-start...
export JMX_PORT=35001 # pick a number 
kafka-server-start... 
export JMX_PORT=35002 # pick a number 
connect-distributed... 

然后,为每个JVM附加到适当的端口

然后,当您对此感到满意时,我建议您在生产部署设置中找到《 Confluent白皮书》,其中,Connect(至少与所有其他生产者和消费者一样)会从实际的经纪人那里消失。