【发布时间】:2018-10-27 06:46:33
【问题描述】:
我已经启动了一个 Nifi 进程(使用 Kafka)并将其连接到一个主题。它正在运行,但我无法(不知道)在哪里可以查看消息?
【问题讨论】:
标签: apache-kafka kafka-consumer-api apache-nifi
我已经启动了一个 Nifi 进程(使用 Kafka)并将其连接到一个主题。它正在运行,但我无法(不知道)在哪里可以查看消息?
【问题讨论】:
标签: apache-kafka kafka-consumer-api apache-nifi
ConsumeKafka 处理器运行并为每条消息生成流文件。只有当您将处理器连接到其他组件(如另一个处理器或输出端口)时,您才能可视化正在传输的数据。
对于初学者,你可以试试这个:
ConsumeKafka 与LogAttribute 或任何其他处理器连接
那件事。LogAttribute 处理器。ConsumeKafka,所有收到的消息都来自
配置好的 Kafka 主题会以流文件的形式排队。List Queue即可访问队列。View按钮,你
可以看到数据。“查看”Kafka消息的整个解释只是为了帮助您调试并开始使用NiFi。理想情况下,您将使用其他 NiFi 处理器来解决您的用例。
示例
您从 Kafka 接收消息并希望将其写入 MongoDB,因此您可以将流程设为:
注意:
有像 ConsumeKafkaRecord 和 PutMongoRecord 这样的基于记录的处理器,但它们基本上在做同样的事情,但有更多的增强。由于您是新手,因此我建议了一个简单的流程。您可以找到有关基于Record 的处理器here 的详细信息并尝试一下。
【讨论】:
您可能需要使用消息--from-beginning,如果这些消息之前已被使用(因此已提交偏移量)。
在 GetKafka 处理器上,有一个属性 Auto Offset Reset 应设置为 smallest,相当于 Kafka Console Consumer 中的 --from-beginning。
【讨论】:
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic collect-response --from-beginning,我们就可以看到该主题中的所有消息。我怎样才能在 Nifi 中实现这一点?或者,有什么方法可以将这些消息存储在文件或其他东西中?忽略我的愚蠢,开发新手。