Apache Kafka собирает дополнительный трафик

#python #apache-kafka #network-traffic

#питон #апач-кафка #сетевой трафик

Вопрос:

Я использую Кафку для мониторинга журналов на предмет трафика. Однако, поскольку сервер используется для других проектов, я улавливаю дополнительный трафик в журналах не только для этой темы, но, похоже, каким-то образом улавливаю его весь.

Как такое может быть? Разве потребитель не должен читать только определенную тему? Кроме того, все это входит в раздел 0. Я не уверен, важно это или нет. Я новичок в Кафке. Спасибо и с уважением,

Потребитель настраивается следующим образом:

 self.__traffic_consumer = KafkaConsumer(   'ai', #Topic  bootstrap_servers = ['10.5.1.1:9094'],   auto_offset_reset = 'earliest',   enable_auto_commit = True,   #group_id = 'ai-mining_group',   value_deserializer = lambda x : loads(x.decode('utf-8')),  consumer_timeout_ms = 1000,  )  

Комментарии:

1. Пожалуйста, покажите журналы, на которые вы ссылаетесь

2. В данном конкретном случае, к сожалению, я не могу поделиться содержимым журналов. Однако я не уверен, что это необходимо. Вопрос по этой теме может быть более общим и похожим на другие типы журналов, а не только на журналы трафика.

3. Я все еще не знаю, что вы подразумеваете под «журналами трафика». AFAIK, kafka-python не выдает журналы трассировки TCP на клиенте-потребителе, не говоря уже о том, чтобы помещать их в раздел(ы) самостоятельно. Показанный вами код действительно читается из определенной темы и всех ее разделов. Вы тоже должны увидеть то же самое с kafka-console-consumer --topic ai , так что неясно, ищете ли вы решение на Python или нет

4. Я понимаю. Чтобы прояснить это, программа установки выполняет следующее: TCP-воспроизведение файлов PCAP, имитирующих трафик —gt; Zeek conn_log —gt;gt; Кафка. Стрелки показывают, как информация поступает вплоть до Кафки.

5. Хорошо, так что начните с основ… kafka-console-consumer --topic ai Показывает ли те же данные, что и потребитель python? Если это так, то проблема не в коде Python. Если вам нужно отфильтровать некоторые данные, вам нужно либо сделать это «вверх по течению» в своем инструменте воспроизведения, либо добавить некоторые условия в код потребителя