首页 > 解决方案 > 如何使一个流文件成为单独的预先存在的流文件的子级?

问题描述

当一个流文件从外部源存在,但知道它来自的先前流文件的 uuid 时,我如何将现有流文件标记为该流文件的父级。

我看到了很多我会遇到这种情况的方法,所以我故意试图保持这个问题的通用性,但一个具体的例子是:

流文件通过 AMQP(PublishAMQP 处理器)发送到外部系统,该系统异步执行工作并在稍后通过 AMQP(ConsumeAMQP 处理器)返回报告。

FlowFile1:处理器-> AMQP(带有FF1 uuid)

FlowFile2:AMQP(使用 FF1 uuid)-> 处理器

由于响应具有原始流文件的 uuid,因此我想将此响应与原始流文件相关联

我看不到从 ProcessSession、FlowFile、ProvenanceEventRecord 或我可以通过绑定或其他方式访问的任何其他内容中执行此操作的方法。我的大部分尝试都是通过 ExecuteScript 处理器进行的,我可以在其中访问流文件对象和 nifi dev api。

标签: javagroovyapache-nifiamqp

解决方案


目前,您只能跟踪从流文件创建到离开 NiFi 的沿袭。一旦它离开 NiFi,你就会进入跨系统血统。


推荐阅读