有没有办法在Kafka 0.10.x中获得当前偏移量?我不想使用shell命令。
当我使用API consumer.endOffsets(...)
时,我可以获得最后的偏移量(logSize)。但是consumer.position(...)
没有得到我当前的偏移量!
总而言之,我想在一个分区中获得当前偏移量,日志大小和滞后。
答案 0 :(得分:0)
您可以使用KafkaConsumer#committed()
获取最新的承诺位置。因此,我禁用自动提交并进行手动提交,您可以在每次提交时计算确切的延迟。
另一方面,您处理的每条记录都通过ConsumerRecord#offset()
提供其偏移量,因此,您还可以在读取单个记录(记录的分区)后计算延迟。