Kafka Connect消费者组滞后指标?

时间:2019-11-05 16:11:35

标签: apache-kafka apache-kafka-connect

我正在运行一个Kafka Connect接收器。我想对此进行监控。

我可以通过炮轰经纪人并像这样使用kafka-consumer-groups工具来手动获得延迟:

unset JMX_PORT; /usr/bin/kafka-consumer-groups --bootstrap-server localhost:9092 --group connect-<my-kafka-connect-connector> --describe

那会给我类似的东西

GROUP                                 TOPIC                 PARTITION  CURRENT-OFFSET  LOG-END-OFFSET  LAG             CONSUMER-ID                                                                             HOST            CLIENT-ID
connect-<my-kafka-connect-connector>  <my-topic>            0          1414248272      2775658553      1361410281      connector-consumer-<my-kafka-connect-connector>-<uuid>                                  /<my-host-ip>   connector-consumer-<my-kafka-connect-connector>-0

这是我想要的滞后信息,但是我希望以Prometheus指标来提供此信息,我可以将其放在仪表板上并监视和设置警报。

我正在摄取Kafka经纪人指标和Kafka Connect指标,它们似乎都没有此信息。我已经使用curlgrep浏览了Prometheus度量标准输出,但是此信息不存在。

我正在通过官方的Confluent Helm图表(https://github.com/confluentinc/cp-helm-charts/tree/master/charts/cp-kafka-connect)运行Kafka Connect,并默认使用Prometheus指标导出。这行得通,我可以获得基本指标,但没有滞后信息:

kubectl -n kafka exec -it kafka-connect-cp-kafka-connect-<id> -c cp-kafka-connect-server /bin/bash

# This will show exactly one metric with simple "running" status.
curl localhost:5556/metrics | grep <my-topic-name-or-connector-name>

cp_kafka_connect_connect_connector_metrics{connector="<my-connector-name>",status="running",task="0",} 1.0

我看到第三方加载项如下: https://github.com/lightbend/kafka-lag-exporter

这似乎完全符合我的要求,但是除非绝对必要,否则我不希望在生产设置中添加其他第三方组件。我真的需要第三方实用程序来获得如此基本的东西吗?如果需要第三方工具,是否应该评估或考虑使用类似的第三方工具?

0 个答案:

没有答案