重复消费
某个消费者组已经将消息消费了,如果想重复消费,可以使用如下步骤:
1、在 kafka/config 目录下,拷贝一份 consumer.properties 文件,比如 consumer_xwj.properties
2、修改 consumer_xwj.properties 文件,将group.id 改成自己的消费者组名称,比如:tc_docker_alert_event_consumer
3、执行命令,将每个分区的offset向后重置1。
/usr/local/qingteng/kafka/bin/kafka-consumer-groups.sh --bootstrap-server 172.16.17.223:9092 --group tc_docker_alert_event_consumer --reset-offsets --topic tc_docker_alert_event --shift-by -1 --command-config /usr/local/qingteng/kafka/config/consumer_xwj.properties --execute
以上命令中的变量需要根据实际情况调整,变量:bootstrap-server、group、topic、command-config
--shift-by N : 把位移调整到当前位移 + N 处,注意 N 可以是负数,表示向前移动
注意:执行以上命令前,必须先停掉该消费者组(如果是后台服务使用该消费者组,则需要先停掉该服务再执行命令)