NiFi после вызова HTTP API, как получить оригинальный файл потока перед вызовом HTTP API - PullRequest
4 голосов
/ 02 июля 2019

У меня есть приведенная ниже последовательность для вызова rest API.

Генерация процессора FLowfile -> Процессор jsonpath -> Процессор замены текста (для создания данных после записи) ---> InvokeHTTP ---> Процессор XPATHдля атрибута ---> исходный файл потока, который генерируется файлом потока создания.

SO, после замены текстового процессора исходные данные будут заменены новыми данными.Итак, как я могу получить исходные данные и использовать атрибуты, созданные после вызова API.

Ответы [ 2 ]

0 голосов
/ 09 июля 2019

в том месте, где у вас есть оригинальный файл, вставьте UpdateAttribute с оценкой какого-то уникального атрибута.

, например MyUID = ${UUID()}

соединение success после UpdateAttribute должно перейти в поток подготовки для вызова http, а копия этого соединения должна перейти к MergeContent, который должен объединитьисходное и оцененное содержимое и атрибуты.

поток: enter image description here

UUID & split: enter image description here

объединить содержание: enter image description here

0 голосов
/ 02 июля 2019

Вы можете сохранить исходный файл потока с прямым выходным отношением из GenerateFlowFile и объединить файлы потока позже с MergeContent в режиме Дефрагментировать и Сохранить все уникальные атрибуты , илиесли исходное содержимое потокового файла достаточно мало, вы можете переместить его в атрибут перед изменением содержимого потокового файла, а затем рекомбинировать их после получения новых данных с помощью Update Attribute / ReplaceText.

...