json - 如何将具有唯一标识符(eventID/UUID/filename)的消息密钥从 Nifi 发送到 Kafka 主题并在 kafka 日志中查看
问题描述
我正在尝试向 Kafka 主题(发布)发送消息(json 文件),并使用文件名或 uuid 作为 kafka 密钥,以便我可以在日志中跟踪它。消息稍后发送和使用,但我无法跟踪日志中的密钥,因此我可以跟踪和识别消息。目标是为每条消息拥有一个唯一标识符(为每个事件使用不同的文件名/uuid)
我试图在 Nifi 中使用 evaluteJsonPath 进程,以便将文件名添加为属性,以便可以使用它,但仍然无法在 kafka 日志中找到任何内容。另外我在 kafka logs = 中将配置更改为调试模式,但没有帮助
解决方案
所有流文件都已经有一个名为“文件名”的属性,因此您不需要使用 EvaluateJsonPath,除非您想用来自 json 的其他内容覆盖文件名属性。
所有流文件还具有“uuid”属性,因此您可以在发布 kafka 处理器中使用其中任何一个。
发布 kafka 的配置在引用 ${filename} 方面看起来是正确的,但我不知道 kafka 记录了什么。
推荐阅读
- java - 在反应式 Spring-Webflux 应用程序中使用 Spring AMQP @RabbitListener 时如何触发重试
- sql - 如何列出没有给定条款空白的最新系列?
- javascript - 材质 UI 自动完成反应。在列表中显示不同的选项并在表单状态中保存不同的选项(具有多个值)
- python - 如何让 Instagram 机器人在动态帖子下点赞评论?
- agora.io - 检查主机是否已加入 agora.io 会话
- flutter - Flutter Webview 滚动很长或不太流畅
- debugging - 有没有办法在 Pytorch 中获取当前在 GPU 内存中的对象树?
- xml - 如何使用 Omni XML 作为 DOMVendor 将子节点结构从一个 XML 文件复制到另一个 XML 文件(合并两个 XML 文件)
- typescript - 如何在 React / Typescript 中使用强类型模型?
- java - Java自定义线程池未终止