You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何从Kafka消息中获取打印offset、partition、topic用于调试

Python Kafka Consumer获取消息元数据方法

你使用的kafka-python库中,迭代消费拿到的message为ConsumerRecord类型对象,内置了所有你需要的消息元数据,直接读取对应属性即可:

  • 消息所属Topic:message.topic
  • 消息所属分区(Partition):message.partition
  • 消息偏移量(Offset):message.offset

修改后的调试用代码如下:

from kafka import KafkaConsumer

consumer = KafkaConsumer('my-topic',
                         group_id='my-group',
                         bootstrap_servers=['localhost:9092'])
for message in consumer:
    print(f"Topic: {message.topic}, Partition: {message.partition}, Offset: {message.offset}, Message value: {message.value()}") 

注意:如果你原有代码中message.value()可以正常运行无需修改,如果运行时提示'bytes' object is not callable报错,把message.value()改为message.value即可,kafka-python库中消息内容默认以属性形式存储,不需要调用方法获取。

如果需要更全的调试信息,直接打印完整message对象即可输出时间戳、消息key、序列化大小等所有字段。

内容的提问来源于stack exchange,提问作者Rahul

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 01:15:05