我是nifi的新手(对Kafka也没有太多的经验),我正在尝试使用制作人产生的信息。为了完成这项工作,我在nifi上使用consumerkafka处理器。
消息正在到达(我可以在队列中看到它们),但是当我检查队列并尝试查看消息时,我只能看到十六进制格式的内容(例如:在原始格式中,我可以看到一条消息:没有为此内容类型注册查看器)。
生产者正在发送的消息是经过编码的avro缓冲区(这是我的参考:https://blog.mimacom.com/apache-kafka-with-node-js/)当我从控制台检查消费者时,每条消息都有以下格式:
02018-09-21T08:37:44.587Z @02018-09-21T08:37:44.587Z @
我已经读到处理器更新记录可以帮助将十六进制代码更改为纯文本,但我不能做到这一点。
如何配置此updaterecord处理器?
棋子
1条答案
按热度按时间polkgigr1#
而不是
ConsumeKafka
,最好使用ConsumeKafkaRecord
适用于您正在使用和配置的Kafka版本的处理器Record Reader
带着一个AvroReader
并设置Record Writer
给你选择的作家。完成后,您必须配置
AvroReader
具有架构注册表的控制器服务。你可以用AvroSchemaRegistry
在这里,您可以指定您在kafka中接收的avro消息的模式。快速浏览本教程将帮助您实现您想要的:https://bryanbende.com/development/2017/06/20/apache-nifi-records-and-schema-registries