使用 python 将 avro 数据写入 kafka
write avro data to kafka using python
我正在使用“confluent-kafka-python”客户端将 avro 数据写入 kafka 主题。
我已经写入了数据,但是当我尝试使用以下方法读取数据时:
kafka-avro-console-consumer 我收到一个错误:
[2017-05-02 13:38:11,387] ERROR Unknown error when running consumer: (kafka.tools.ConsoleConsumer$:105)
org.apache.kafka.common.errors.SerializationException: Error deserializing Avro message for id 4
Caused by: java.net.ConnectException: Connection refused (Connection refused)
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at java.net.Socket.connect(Socket.java:538)
at sun.net.NetworkClient.doConnect(NetworkClient.java:180)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
at sun.net.www.http.HttpClient.<init>(HttpClient.java:242)
at sun.net.www.http.HttpClient.New(HttpClient.java:339)
at sun.net.www.http.HttpClient.New(HttpClient.java:357)
显然它无法解码数据。
有什么想法吗?
它似乎无法连接到架构注册表。你确定你已经启动 运行 并为你的消费者连接 URL 和端口了吗?
尝试将以下内容添加到您的控制台消费者
--属性 schema.registry.url=您的架构注册表地址
我正在使用“confluent-kafka-python”客户端将 avro 数据写入 kafka 主题。
我已经写入了数据,但是当我尝试使用以下方法读取数据时: kafka-avro-console-consumer 我收到一个错误:
[2017-05-02 13:38:11,387] ERROR Unknown error when running consumer: (kafka.tools.ConsoleConsumer$:105)
org.apache.kafka.common.errors.SerializationException: Error deserializing Avro message for id 4
Caused by: java.net.ConnectException: Connection refused (Connection refused)
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at java.net.Socket.connect(Socket.java:538)
at sun.net.NetworkClient.doConnect(NetworkClient.java:180)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
at sun.net.www.http.HttpClient.<init>(HttpClient.java:242)
at sun.net.www.http.HttpClient.New(HttpClient.java:339)
at sun.net.www.http.HttpClient.New(HttpClient.java:357)
显然它无法解码数据。 有什么想法吗?
它似乎无法连接到架构注册表。你确定你已经启动 运行 并为你的消费者连接 URL 和端口了吗?
尝试将以下内容添加到您的控制台消费者
--属性 schema.registry.url=您的架构注册表地址