Apache nifi 使用nifi提取多个json字段

Apache nifi 使用nifi提取多个json字段,apache-nifi,Apache Nifi,我是Nifi的新手。下面是将使用Nifi实现的json结构 { "jobs": [ { "jid": "1", "name": "job1", "state": "FAILED", "start-time": 12243 }, { "jid": "2", "name": "job2", "

我是Nifi的新手。下面是将使用Nifi实现的json结构


{
  "jobs": [
      {
            "jid": "1",
            "name": "job1",
            "state": "FAILED",
            "start-time": 12243
      },
      {
            "jid": "2",
            "name": "job2",
            "state": "FAILED",
            "start-time": 1233
      },
      {
            "jid": "3",
            "name": "job2",
            "state": "RUNNING",
            "start-time": 1223213
      }

  ]
}

我需要的输出如下过滤只有失败的工作细节

{
  [
  job1,
  job2
  ]
}

请提前帮助和感谢。

此规范将输出一个JSON数组[job1,job2]:

[
  {
    "operation": "shift",
    "spec": {
      "jobs": {
        "*": {
          "state": {
            "FAILED": {
              "@(2,name)": "[]"
            }
          }
        }
      }
    }
  }
]
大括号内数组的所需输出不是有效的JSON,因为对象需要键/值对。如果您希望在对象中使用数组,则让我们调用键
failed\u jobs
,您可以使用以下规范:

[
  {
    "operation": "shift",
    "spec": {
      "jobs": {
        "*": {
          "state": {
            "FAILED": {
              "@(2,name)": "failed_jobs[]"
            }
          }
        }
      }
    }
  }
]

此规范将输出一个JSON数组[job1,job2]:

[
  {
    "operation": "shift",
    "spec": {
      "jobs": {
        "*": {
          "state": {
            "FAILED": {
              "@(2,name)": "[]"
            }
          }
        }
      }
    }
  }
]
大括号内数组的所需输出不是有效的JSON,因为对象需要键/值对。如果您希望在对象中使用数组,则让我们调用键
failed\u jobs
,您可以使用以下规范:

[
  {
    "operation": "shift",
    "spec": {
      "jobs": {
        "*": {
          "state": {
            "FAILED": {
              "@(2,name)": "failed_jobs[]"
            }
          }
        }
      }
    }
  }
]