to_ck/v2/consumer.py
2021-07-28 19:32:49 +08:00

25 lines
681 B
Python

from kafka import KafkaConsumer
from kafka import TopicPartition
from settings import settings
__all__ = 'create_consumer',
def create_consumer(partition=-1):
def consumer():
c = KafkaConsumer(**settings.KAFKA_CONSUMER_CONF)
if partition > 0:
c.assign([TopicPartition(settings.SUBSCRIBE_TOPIC, partition)])
else:
c.subscribe([settings.SUBSCRIBE_TOPIC])
for msg in c:
# print(msg)
topic = msg.topic
val = msg.value
# if val.get('properties',{}).get('owner_name') not in ('gmhdgdt', 'gmhdtt'):
# continue
yield topic, val
return consumer