任何想法如何在使用命令行在kafka中使用消息时设置组名。
我尝试使用以下命令:
bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic nil_RF2_P2 --from-beginning --config group.id=test1
'config' is not a recognized option
目标是使用以下命令查找已消耗消息的偏移量:
bin/kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper localhost:2181 --group test1
在这方面可以有人帮忙!!
提前致谢!!
答案 0 :(得分:15)
最简单的解决方案是:
bin / kafka-console-consumer.sh --zookeeper localhost:2181 --topic nil_RF2_P2 - from-beginning - consumer-property group.id = test1
如果您指定标志 - 从头开始,请记住消费者群体过去不应该使用任何记录,否则您的消费者将从最早的未消费记录开始消费指定的组(而不是从实际开始,如您所愿 错误地假设。)
答案 1 :(得分:12)
得到了从命令提示符更改组名的答案!!
步骤进行:
consumer.properties
文件,例如consumer1.properties
。 group.id=<Give a new group name>
中的consumer1.properties
。bin/kafka-console-consumer.sh --new-consumer --bootstrap-server localhost:9092 --topic topicname --from-beginning --consumer.config config/consumer1.properties --delete-consumer-offsets
答案 2 :(得分:3)
如果您想要更改组ID而不丢失记录的偏移量,您可以手动获取当前Group.id的偏移量并设置为具有新ID的新运行使用者。如果没有任何控件来获取消费者实例中的偏移量,则可以运行此命令。
//File1.c
static int st;
//File2.c
static int st;
然后您可以从特定偏移量中搜索数据。注意你应该调用追求调查,分配命令不起作用。 你也可以在github上看到我的代码示例
答案 3 :(得分:1)
您可以使用--group选项(经Kafka 2.0.0测试):
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --group test-consumer --topic test --from-beginning
答案 4 :(得分:0)
如果您正在使用bash,那么您可以使用其进程替换功能。
bin/kafka-console-consumer.sh --zookeeper localhost:2181 \
--topic nil_RF2_P2 --from-beginning \
--consumer.config <(echo group.id=test1)