从 kafka 0.8.2.0 开始,跟踪消费者延迟和主题大小似乎变得非常困难
你如何跟踪偏移量(主题大小)和卡夫卡滞后?您是否会在生产者插入消息时在某处增加一个计数器,并在消费者确认消息时增加另一个计数器?
我正在使用 airbnb's kafka-statsd-metrics2 - 但出于某种原因,所有关于主题大小的指标总是 0,这可能是他们的错误报告,但你是怎么做到的?
我们的消费者和生产者使用 python 编写 kafka-python ,他们声明他们不支持 ConsumerCoordinator 偏移量 API,因此我整理了一个解决方案来查询 zookeeper 并将这些指标发送到 statsd 实例(看起来很尴尬),但我仍然缺少主题大小指标。
我们正在使用 collectd 来收集系统指标,我没有使用 JMX 的经验并且在 collectd 中配置它似乎很复杂,我已经尝试了几次,所以我找到了一些不这样做的方法。
如果您有任何意见,我很想听听,即使是:“这属于 x stackexchange-site”
请您参考如下方法:
如果我对您的理解正确,您可以使用 FetchResponse 中的 HighwaterMarkOffset。通过这种方式,您将知道分区末尾的偏移量是多少,并且能够将其与您当前确认的偏移量或此 FetchResponse 中最后一条消息的偏移量进行比较。
详情 here
