假设我没有权限访问在感兴趣的分区上提交的生产者集,但是可以控制一堆c++消费者。因为我在一个复杂的程序上运行基准测试,所以我想知道我的消费者获取的偏移量和存储在分区中的总偏移量之间的分布。
例如。, >> reading message #1234 of 5678 total in partition 0 of topic foo
我误解了这个计划的目的 RdKafka::Consumer->outq_len()
以及 RdKafka::Topic->OFFSET_END
因为他们看起来总是平等的 0
以及 -1
分别是。
如何获得 5678
我的例子有什么价值?
1条答案
按热度按时间wqsoz72f1#
你需要订阅
librdkafka
的统计信息,以获取有关消费者滞后的最新视图。注册Event
回调类和正则调用poll()
把手上,检查一下EVENT_STATS
然后解析相应的json消息并查找lo_offset
,hi_offset
以及consumer_lag
.