我想通过时间戳重置Kafka消费群的偏移量。但当我使用以下命令时:
./kafka-consumer-groups.sh --bootstrap-server localhost:9092 --reset-offsets --to-datetime 2017-11-1907:52:43:00:000 --group <group_name> --topic <topic_name> --execute
我收到以下错误消息:
注意:这将只显示有关使用java consumer api的使用者(非基于zookeeper的使用者)的信息。
如何按时间重置偏移
3条答案
按热度按时间ldfqzlk81#
调用
可以将偏移量重置为给定日期时间之后最早的偏移量。日期时间格式为
yyyy-MM-ddTHH:mm:ss.
,2017-08-04t00:00:00.000为例。也可以按持续时间重置偏移。请参见下面的示例:
5vf7fwbs2#
这不是一个错误,只是一个警告-因为您指定了
--bootstrap-server
选项更改将只影响使用新JavaAPI实现的使用者。如果您有使用其他API构建的使用者,那么您需要指定--zookeeper
而不是选择。fkaflof63#
旧线程,但这个链接是有用的,如果你想玩Kafka偏移。
https://gist.github.com/marwei/cd40657c481f94ebe273ecc16601674b#file-如何重置Kafka消费组偏移量
突出:
kafka 0.11.0.0(confluent 3.3.0)添加了对通过cli操纵消费群体偏移量的支持
kafka-consumer-groups
命令。列出该组订阅的主题
bash kafka-consumer-groups --bootstrap-server <kafkahost:port> --group <group_id> --describe
注意“当前偏移”和“日志结束偏移”下的值当前偏移量”是每个分区中此使用者组当前所在的偏移量。重置主题的使用者偏移量(预览)
bash kafka-consumer-groups --bootstrap-server <kafkahost:port> --group <group_id> --topic <topic_name> --reset-offsets --to-earliest
这将打印重置的预期结果,但不会实际运行它。重置主题的使用者偏移量(执行)
bash kafka-consumer-groups --bootstrap-server <kafkahost:port> --group <group_id> --topic <topic_name> --reset-offsets --to-earliest --execute
这将执行重置,并将指定主题的使用者组偏移量重置回0。重复1以检查复位是否成功
注意
执行重置时,使用者组必须没有正在运行的示例。否则将拒绝重置。
有许多其他重置选项,运行
kafka-consumer-groups
有关详细信息--班次
--到当前
--至最新
--抵消
--截止时间
--按持续时间
该命令还提供了一个选项,用于重置使用者组订阅的所有主题的偏移量:
--all-topics