Кафка будет подключаться на Java, но не на Python - PullRequest
0 голосов
/ 24 января 2019

Я пытаюсь подключиться к среде cloudera, используя Kafka, и передавать данные из темы.Я был в состоянии успешно сделать это в Java, но не Python.Python подключается, но не может получить логи.Я не верю, что мои пути или серверы неверны, потому что я подключился через Java с той же информацией.

Я успешно делал это раньше с другой средой cloudera, в python, и я в основном копирую ивставка из этого кода.С учетом вышесказанного, возможно ли, что в cloudera есть некоторые настройки для этой среды, которые мешают мне получать логи через python?

with java:
  from java.lang import System
  System.setProperty('java.security.auth.login.config','<path to jaas.conf>')
  System.setProperty('java.security.krb5.conf','<path to krb5.conf>')
broker=['<broker1>:9092','<broker2>:9092','<broker3>:9092'] 
try:
  consumer=KafkaConsumer(bootstrap_servers=broker,
                         sasl_kerberos_service_name='kafka',
                         auto_offset_reset='earliest',api_version=(1,0,1),
                         session_timeout_ms= 30000,enable_auto_commit=True,
                         sasl_mechanism='GSSAPI',
                         security_protocol='SASL_PLAINTEXT')
except Exception as e:
  message_consumer="Error  connecting to kafka"+e.message
  sendAlertEmail(message_consumer) 
  logger1.error("Failed to connect to brokers"+e.message)

Чтобы проверить программу, которую я делаю,

for message in consumer:
    print(message)

Когда я пытаюсь получить доступ к среде, она никогда не попадает в цикл.Тем не менее, я знаю, что есть логи для этой темы.

...