Apache nifi 使用nifi提取多个json字段
我是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", "
{
"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[]"
}
}
}
}
}
}
]