5

次のような単純な JSON オブジェクトがあります。

d = { 'tag ': 'blah',
  'name' : 'sam',
  'score': 
    {'row1': 100,
      'row2': 200
     }
}

以下は、Kafka にメッセージを送信している私の python コードです。

from kafka import SimpleProducer, KafkaClient
import json 

# To send messages synchronously
kafka = KafkaClient('10.20.30.12:9092')
producer = SimpleProducer(kafka)
jd = json.dumps(d)
producer.send_messages(b'message1',jd)

メッセージが受信されていることをストーム ログで確認できますが、tuple { json structure in here } に対して Transformation null をスローしています。これを修正するために何をする必要があるかわかりません。

4

2 に答える 2

3

以下は、プロデューサーからカフカへの私のコードです。私が別の方法で行った唯一のことはyaml.safe_load、json コンテンツをロードするために使用することでした。コンテンツを Unicode ではなく文字列として返します。以下はスニペットです

with open('smaller_test_prod.txt') as f:
    for line in f:
        d = yaml.safe_load(line)
        jd = json.dumps(d)
        producer.send_messages(b'zeus_metrics',jd)

ここでは、すべての行がファイルに保存された json データです。

于 2015-09-30T07:25:19.510 に答える