如何在Nifi中实现If-ElseIf-Else条件

Bip*_*kya 3 apache-nifi

在NiFi中,
我有一个JSON数据,我使用SplitJson和EvaluateJson将Json数据的必需组件存储在我自己的变量中.

如何在Json数据值上实现if-elseif-else条件?

例如,如果attributeA == 0,则relationship = pass,else则失败,依此类推.

And*_*ndy 7

您将使用RouteOnAttribute具有动态属性的处理器,该属性根据提供的属性评估NiFi表达式语言.以下是有关布尔操作评估多个属性的文档部分.


Ósc*_*reu 5

如果你想实现一个 If-ElseIf-Else 条件,你可以这样做:

${
LogData:jsonPath('$.email'):equals('DEV'):not():ifElse(
    ${LogData:jsonPath('$.email'):equals('QA'):ifElse(
        'aa',
        'bb'
    )},
    'cc'
)}
Run Code Online (Sandbox Code Playgroud)

请注意,使用这种方法,您可以根据需要创建嵌套条件,但是如果您需要进行一些路由,最好使用@andy 所说的RouteOnAttribute处理器。