Confluent-Kafka Python: как составить список всех тем программно

У меня есть брокер kafka, работающий в моей локальной системе. Для связи со сломанным с помощью моего веб-приложения на основе Django я использую обертка confluent-kafka. Однако, просматривая API-интерфейс администратора, я не смог найти API-интерфейс для перечисления тем kafka. (Темы созданы прагматично и динамичны).

Могу ли я как-то перечислить их в своей программе? Требование состоит в том, что если мой рабочий перезагрузит всех назначенных потребителей, прослушивающих эти темы, необходимо будет повторно инициализировать, поэтому я хочу зациклиться на всех темах и назначить потребителя каждому.


person Paras    schedule 06.05.2019    source источник


Ответы (2)



Вот как это сделать:

>>> from confluent_kafka.admin import AdminClient

>>> conf = {'bootstrap.servers': 'vps01:9092,vps02:9092,vps03:9092'}
>>> kadmin = AdminClient(conf)

>>> kadmin.list_topics().topics # Returns a dict(). See example below.
{'topic01': TopicMetadata(topic01, 3 partitions),}

Надеюсь, это поможет.

person NYCeyes    schedule 20.12.2019