【发布时间】:2020-06-22 10:18:29
【问题描述】:
在文档:https://pulsar.apache.org/docs/en/concepts-clients/中,说明可以从最早或最晚的位置开始一个消费者,也可以指定一个消息id。能不能支持这个需求,指定一个时间点,从那里开始,比如现在我想迭代昨天12:00到昨天13:00的消息?
【问题讨论】:
标签: apache-pulsar
在文档:https://pulsar.apache.org/docs/en/concepts-clients/中,说明可以从最早或最晚的位置开始一个消费者,也可以指定一个消息id。能不能支持这个需求,指定一个时间点,从那里开始,比如现在我想迭代昨天12:00到昨天13:00的消息?
【问题讨论】:
标签: apache-pulsar
是的,您可以将订阅回退到时间偏移。 pulsar-admin persistent reset-cursor command 的 time 选项可以让你这样做:
# bin/pulsar-admin persistent reset-cursor
reset-cursor Reset position for subscription to position closest to timestamp or messageId
Usage: reset-cursor [options] persistent://tenant/namespace/topic
Options:
--messageId, -m
messageId to reset back to (ledgerId:entryId)
* -s, --subscription
Subscription to reset position on
--time, -t
time in minutes to reset back to (or minutes, hours,days,weeks eg:
100m, 3h, 2d, 5w)
您还可以使用 REST 管理 API。
【讨论】: