Остановите группу процессоров NiFi, как только выполнение будет завершено

Я запускаю и останавливаю группу процессоров, содержащую поток пользовательских процессоров, через API.

Как я могу заставить группу процессоров запускаться только один раз и просто останавливаться?

Мы можем использовать cron, чтобы запустить его только один раз. Но есть ли чистый способ без необходимости вычислять выражение cron и выполнять его только один раз?


person Kannan Ramamoorthy    schedule 08.08.2018    source источник


Ответы (2)


В конце потока вы можете использовать процессор InvokeHTTP (или) сценарий оболочки запуска, а с помощью REST API группы процессов вы можете остановите все процессоры в группе процессов.

Запланируйте триггерный процессор в своей группе процессов для запуска на таймере с 1000000000000 секунд и с помощью другого процессора InvokeHTTP (или) с помощью сценария оболочки вы можете запустить этот процессор.

Поток:

введите описание изображения здесь

Вы можете остановить свой триггерный процессор (или) остановить всю группу процессов.

Если вы останавливаете всю группу процессов, вам необходимо оставить процессор InvokeHTTP, который запускает группу процессов, должен находиться в другой группе процессов.

person Shu    schedule 08.08.2018
comment
Есть ли более чистый способ сделать это? Не выставляя никаких дополнительных процессоров? - person Kannan Ramamoorthy; 08.08.2018

По завершении вы можете использовать процессор InvokeHTTP для вызова nifi-api.

Здесь вы можете найти интересная статья, объясняющая, как это сделать.

person Óscar Andreu    schedule 08.08.2018