首页 > 解决方案 > 如何将具有唯一标识符(eventID/UUID/filename)的消息密钥从 Nifi 发送到 Kafka 主题并在 kafka 日志中查看

问题描述

我正在尝试向 Kafka 主题(发布)发送消息(json 文件),并使用文件名或 uuid 作为 kafka 密钥,以便我可以在日志中跟踪它。消息稍后发送和使用,但我无法跟踪日志中的密钥,因此我可以跟踪和识别消息。目标是为每条消息拥有一个唯一标识符(为每个事件使用不同的文件名/uuid)

我试图在 Nifi 中使用 evaluteJsonPath 进程,以便将文件名添加为属性,以便可以使用它,但仍然无法在 kafka 日志中找到任何内容。另外我在 kafka logs = 中将配置更改为调试模式,但没有帮助

在此处输入图像描述

在此处输入图像描述

标签: jsonapache-kafkaapache-nifi

解决方案


所有流文件都已经有一个名为“文件名”的属性,因此您不需要使用 EvaluateJsonPath,除非您想用来自 json 的其他内容覆盖文件名属性。

所有流文件还具有“uuid”属性,因此您可以在发布 kafka 处理器中使用其中任何一个。

发布 kafka 的配置在引用 ${filename} 方面看起来是正确的,但我不知道 kafka 记录了什么。


推荐阅读