代码之家  ›  专栏  ›  技术社区  ›  clay

卡夫卡:当前主题的偏移量或记录计数是多少?

  •  1
  • clay  · 技术社区  · 6 年前

    如何获取给定主题的当前偏移量、分区偏移量或记录计数?它不需要完美,但我想知道卡夫卡主题中有多少数据。

    1 回复  |  直到 6 年前
        1
  •  2
  •   Giorgos Myrianthous    6 年前

    为了获得主题分区的偏移量,可以使用 kafka.tools.GetOffsetShell

    ./bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list localhost:9092 --topic your_topic_name --time -1
    

    如果要获取特定组的最新偏移量,还可以使用:

    ./bin/kafka-run-class.sh kafka.tools.ConsumerOffsetChecker  --topic your_topic_name--zookeeper localhost:2181 --group your_group_id
    

    为了计算主题中的条目数,您可以使用整个主题(当您停止使用者时,将报告已使用的消息总数)。或者,您可以使用

    ./bin/kafka-run-class.sh kafka.tools.GetOffsetShell  --broker-list <broker>:  <port> --topic <topic-name> --time -1 --offsets 1 | awk -F  ":" '{sum += $3} END {print sum}'