老版本kafka查询topic消费情况(python查询)

由于老版本的kafka缺少shell,导致无法通过命令直接进行查询,所以通过python代码,实现消费情况查询

安装必须的包

shell 复制代码
#pyhon2.5
pip install kafka-python==1.4.7

python脚本

python 复制代码
#!/usr/bin/env python
import sys
from kafka import KafkaConsumer, TopicPartition

if len(sys.argv) != 2:
    print("Usage: python queryConsumer.py <topic_name>")
    sys.exit(1)

bootstrap_servers = ['localhost:9092']

topic_name = sys.argv[1]

consumer = KafkaConsumer(
    bootstrap_servers=bootstrap_servers,
    auto_offset_reset='earliest',
    enable_auto_commit=False,
    consumer_timeout_ms=1000
)

partitions = consumer.partitions_for_topic(topic_name)
print("Partitions: ", partitions)

for partition in partitions:
    tp = TopicPartition(topic_name, partition)
    consumer.assign([tp])
    consumer.seek_to_end(tp)
    last_offset = consumer.position(tp)
    print("Partition: ", partition, "Last offset: ", last_offset)

consumer.close()

查询

[root@vm_ tools]# python queryConsumer.py test
('Partitions: ', set([0]))
('Partition: ', 0, 'Last offset: ', 1)
相关推荐
拾忆,想起15 分钟前
深入浅出负载均衡:理解其原理并选择最适合你的实现方式
分布式·后端·微服务·负载均衡
先睡2 小时前
Maven
开发语言·python
赵谨言3 小时前
基于 Python 的学生成绩管理系统设计与实现
经验分享·python·毕业设计
_可乐无糖3 小时前
深度解析 pytest 参数化与 --count 执行顺序的奥秘
android·python·ui·ios·appium·自动化·pytest
Wzt_blog3 小时前
LLM实现视频切片&合成 前沿知识调研
python·音视频
40岁的系统架构师4 小时前
9分布式微服务架构
分布式·微服务·架构
Feng.Lee4 小时前
性能测试工具Jmeter分布式运行
分布式·测试工具·jmeter
不是二师兄的八戒4 小时前
深入学习 Python 爬虫:从基础到实战
python
Jtti4 小时前
分布式组件底层逻辑是什么?
分布式
zhonguncle4 小时前
像JSONDecodeError: Extra data: line 2 column 1 (char 134)这样的问题怎么解决
python·json