Python confluent_kafka - 列出当前收听主题的所有消费者
Python confluent_kafka - List All Consumer currently Listening to a Topic
如何获取正在使用 Confluent_Kafka 收听主题的 consumer.id?
我能够获取消费者组和主题。但不是消费者 name/id.
如果您的消费者正在使用组功能,您可以使用 AdminClient
获取消费者组列表,然后找到属于该组成员的每个消费者。它已添加到 commit.
示例片段
from confluent_kafka.admin import AdminClient
broker = '1.1.1.1:9092' # replace appropriately
a = AdminClient({'bootstrap.servers': broker})
groups = a.list_groups(timeout=10)
print(" {} consumer groups".format(len(groups)))
for g in groups:
print(" \"{}\" with {} member(s), protocol: {}, protocol_type: {}".format(
g, len(g.members), g.protocol, g.protocol_type))
for m in g.members:
print("id {} client_id: {} client_host: {}".format(m.id, m.client_id, m.client_host))
您可能对 client_id
可以区分组中消费者的字段感兴趣。
参考:https://github.com/confluentinc/confluent-kafka-python/blob/master/examples/adminapi.py
如何获取正在使用 Confluent_Kafka 收听主题的 consumer.id?
我能够获取消费者组和主题。但不是消费者 name/id.
如果您的消费者正在使用组功能,您可以使用 AdminClient
获取消费者组列表,然后找到属于该组成员的每个消费者。它已添加到 commit.
示例片段
from confluent_kafka.admin import AdminClient
broker = '1.1.1.1:9092' # replace appropriately
a = AdminClient({'bootstrap.servers': broker})
groups = a.list_groups(timeout=10)
print(" {} consumer groups".format(len(groups)))
for g in groups:
print(" \"{}\" with {} member(s), protocol: {}, protocol_type: {}".format(
g, len(g.members), g.protocol, g.protocol_type))
for m in g.members:
print("id {} client_id: {} client_host: {}".format(m.id, m.client_id, m.client_host))
您可能对 client_id
可以区分组中消费者的字段感兴趣。
参考:https://github.com/confluentinc/confluent-kafka-python/blob/master/examples/adminapi.py