是否可以使用其余API获取apache NiFi中处理器/连接器的ID?

时间:2017-04-05 06:46:12

标签: rest apache-nifi

我正在探索NiFi提供的其余API功能。我有一个问题:我们可以通过查询组件名称使用NiFi-API来获取组件的ID,无论是处理器,处理器组,控制器服务等吗?

我试过http://localhost:8080/nifi-api/flow/search-results?q=sample我的NiFi Flow中有一个名为sample的处理器组。

enter image description here

我有一个名为GetFile的{​​{1}}处理器,我查询了这个:sample get file。他们似乎都没有工作。 NiFi-API文档在这些方面并不十分有用。所以指导我如何实现这一目标。

1 个答案:

答案 0 :(得分:6)

De Santa,

如果你想获得处理器的id,你必须知道处理器的进程组ID。

这里我有一个简单的例子,其中获取root中处理器的id。

http://localhost:8080/nifi-api/controller/process-groups/root/processors

以上代码适用于nifi-0.6.1。

<强> EDIT1

在NiFi-1.1.1中

你必须使用下面的rest api来收集处理器

流程组ID:515eeb84-646b-4b33-eaf7-2028420a9fcb

http://localhost:8089/nifi-api/process-groups/515eeb84-646b-4b33-eaf7-2028420a9fcb/processors

以上API会收集上述流程组ID中的处理器数量。

[OR]

流程组ID:root

http://localhost:8089/nifi-api/process-groups/root/processors

它收集Root Canvas中可用处理器的数量。

因此,如果您知道进程组的ID,那么处理器除此之外很容易获得处理器ID。