Apache NiFI ExecuteStream命令输出错误

Apache NiFI ExecuteStream命令输出错误,apache,apache-nifi,Apache,Apache Nifi,我有一个NiFi流,它使用ExecuteStreamCommand处理器运行一些shell脚本,ExecuteStreamCommand的输出不正确 我运行的Shell是: if (( $(ps -ef | grep -v grep | grep kibana | wc -l) > 0 )); then echo "1"; else echo "0"; fi; 服务是向上的,然后1如果是向下的,那么0,很简单,但是输出是错误的,不管服务是向上的还是

我有一个NiFi流,它使用ExecuteStreamCommand处理器运行一些shell脚本,ExecuteStreamCommand的输出不正确

我运行的Shell是:

if (( $(ps -ef | grep -v grep | grep kibana | wc -l) > 0 )); then echo "1"; else echo "0"; fi;
服务是向上的,然后1如果是向下的,那么0,很简单,但是输出是错误的,不管服务是向上的还是向下的,输出总是1

下面是一个演示,如果流:

if (( $(ps -ef | grep -v grep | grep kibana | wc -l) > 0 )); then echo "1"; else echo "0"; fi;

不要使用原始关系使用输出流关系连接到日志属性处理器

流量:-

如果将原始关系连接到日志属性,则表示生成流文件的内容将传递到原始关系

如果连接输出流,即shell脚本的输出将在flowfile内容中。 输出:- 内容:-


您的脚本没有真正的输入,因此请尝试使用
ExecuteProcess
而不是
ExecuteStreamCommand
或将
Ignore STDIN
设置为
true
Hi@daggett,我实际上是这样做的,这是一个minifi流,它从基于本地主机ip的mysql rdbms获取数据并创建此服务检查脚本。忽略STDIN完成了此操作-可以将此作为答案发布,并提供有关为什么会出现此行为的更详细信息?我使用原始连接启用“输出目标属性”选项,所以我只剩下一个关系