重置消费位点是指改变消费者当前的消费位置。您可通过重置消费位点,按需清除堆积的或不想消费的这部分消息,或直接跳转到某个时间点,从指定时间点的位点开始消费消息。
前提条件
已停止所有Consumer客户端(消息队列Kafka非2.6.0版不支持在线重置消费位点)。
注意在停止Consumer客户端后,需要经过ConsumerConfig.SESSION_TIMEOUT_MS_CONFIG配置的时间(默认10000 ms),服务端才认为Consumer真正下线。
背景信息
消息队列Kafka版支持以下重置消费位点方式:
- 消息清除:因为某种原因,订阅者不准备再继续消费Broker上堆积的消息,此时通过清除消息,可以将消费位点指定到最新的位置。
注意 堆积的消息本身并不会因此被删除,改变的只是消费位点。
- 指定时间点开始消费:将某个Group的位点重置到过去或者将来的某个时间点(该时间点以Topic的消息存储时间为准,假设为“t”)。重置过后,Group将从“t”时间点的位点开始消费。
- 指定分区位点开始消费:将某个Group的位点按照分区重置到某个位点(分区为当前Group订阅的Topic下的分区,假设重置分区“1”的消费位点为“3”)。重置后,Group在分区1中将从“3”位点开始消费。
操作步骤
-
登录消息队列Kafka版控制台。
-
在概览页面的资源分布区域,选择地域。
-
在实例列表页面,单击目标实例名称。
-
在导航栏,单击Consumer Group 管理。
-
在Consumer Group 管理页面,找到目标Group,在其右侧操作列,选择 > 重置消费位点。

-
在重置Group的消费位点面板,了解其前提条件,设置重置策略。
- 设置重置所有 Topic。
- 单击是,重置所有Topic的消费位点。
- 单击否,在Topic文本框选择需要重置Topic的名称。
- 设置重置方式。
- 单击从最新位点开始消费,将消费位点指定到最新的位置,单击确定。
- 单击从指定时间点的位点开始消费,在时间点文本框,单击日历,从指定时间点的位点开启消费功能,单击确定。
- 单击按分区消费位点进行重置,在目标分区所在行, 消费位点文本框输入开始消费位点值,单击确定。
-
在提示对话框,确认提示信息,单击确认。