当我描述一个kafka主题时,它没有显示任何分区的日志结束偏移量,而是显示了所有其他元数据,如ISR、副本、Leader。
如何查看给定主题的分区的日志结束偏移量?
运行这个:./kafka-topics.sh --zookeeper zk-service:2181 --describe --topic "__consumer_offsets“
输出没有偏移量列。
注意:只需要日志结束偏移量。
发布于 2019-05-21 11:55:26
由于您只查找主题的日志结束偏移量,因此可以对kafka.tools.GetOffsetShell类使用kafka-run-class。
假设您的主题是__consumer_offsets,您可以通过运行以下命令来获取结束偏移量:
./kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list localhost:9092 --time -1 --topic __consumer_offsets将--broker-list localhost:9092更改为所需的Kafka地址。这将列出主题中每个分区的所有日志结束偏移量。
发布于 2019-05-21 04:04:35
下面是获取给定消费者组的给定kafka主题的所有分区偏移量所需的命令
kafka-consumer-groups --bootstrap-server <kafka-broker-list-with-ports> --describe --group <consumer-group-name>
请注意,末尾的<consumer-group-name>很重要,因为偏移量是由消费者提交的,而消费者通常是消费者组的一部分。
此命令的输出可能如下所示:
TOPIC PARTITION CURRENT-OFFSET LOG-END-OFFSET LAG CONSUMER-ID HOST CLIENT-ID <topic-name> 0 62 62 0 <consumer-id> <host> <client>
然而,在你的帖子中,你试图为内部主题__consumer_offsets获取这些信息,所以你需要一个消费者群体,让消费者从这个内部主题中消费。您也许可以执行以下操作:
kafka-console-consumer --bootstrap-server <kafka-broker-list-with-ports> --topic __consumer_offsets --formatter "kafka.coordinator.group.GroupMetadataManager\$OffsetsMessageFormatter" --max-messages 5上述命令的输出:
[<consumer-group-name>,<topic-name>,0]::[OffsetMetadata[481690879,NO_METADATA],CommitTime 1479708539051,ExpirationTime 1480313339051]
<consumer-group-name>,并将其放入开头提到的kafka-consumer-groups命令中,您就可以获得所有50个分区的偏移量详细信息,只针对给定的使用者组。我希望这能帮到你。
发布于 2020-01-24 00:42:34
安装kafkacat,它是一个简单易用的kafka工具:
sudo apt-get update
sudo apt-get install kafkacat
kafkacat -C -b <kafka-broker-ip-and-port> -t <topic> -o -1这不会消耗任何东西,因为在添加消息后,偏移量会递增。但它将为您提供所有分区的偏移量。但是请注意,这不是您正在消耗的当前偏移量...以上答案将对您了解分区延迟有更多帮助。
https://stackoverflow.com/questions/56218258
复制相似问题