如何使用控制台使用者从特定角度使用kafka主题的消息?

时间:2018-12-23 15:05:09

标签: apache-kafka kafka-consumer-api

我有一个主题,可以保留并存储大量数据。我只想阅读特定时间点的消息。

我知道Java API可以实现,但是我想使用kafka-console-consumer,因为我只是想快速检查一下。

我可以使用--from-beginning标志,但我会避免避免加载随后需要过滤掉的数据。

1 个答案:

答案 0 :(得分:2)

我发现最快的方法是创建一个使用者组,将其重置为我感兴趣的时间,然后使用控制台用户使用该新组,这些命令是:

# create a new group and reset the topic offset for the group to a specific date
kafka-consumer-groups --bootstrap-server localhost:9092 \
  --topic $topic \
  --reset-offsets \
  --group $randomname \
  --to-datetime 'YYYY-MM-DDTHH:mm:SS.sss' \
  --execute

然后:

# start consuming by providing the newly created group
kafka-console-consumer --bootstrap-server localhost:9092 \
  --group $randomname \
  --topic $topic

我使用的是kafka-cluster 1.1,并且不确定这些标记是否可用于较早的版本。