Created 06-07-2017 11:04 AM
Hi, we need to add a default key:value with actual timestamp to the following json input structure:
[ {
"host" : "DUSTSADMIN.ads.xyz.de",
"host_icons" : "menu",
"host_state" : "UP",
"num_services_crit" : "0",
"num_services_ok" : "28",
"num_services_pending" : "0",
"num_services_unknown" : "0",
"num_services_warn" : "0"
}, {
"host" : "DUSTSVMDC01.ads.xyz.de",
"host_icons" : "menu",
"host_state" : "UP",
"num_services_crit" : "0",
"num_services_ok" : "34",
"num_services_pending" : "0",
"num_services_unknown" : "0",
"num_services_warn" : "0"
}, {
"host" : "DUSTSVMDC02.ads.xyz.de",
"host_icons" : "menu",
"host_state" : "UP",
"num_services_crit" : "0",
"num_services_ok" : "34",
"num_services_pending" : "0",
"num_services_unknown" : "0",
"num_services_warn" : "0"
} ]
needed output:
[ { "ctime" : "Current_timestamp",
"host" : "DUSTSADMIN.ads.xyz.de",
"host_icons" : "menu",
"host_state" : "UP",
"num_services_crit" : "0",
"num_services_ok" : "28",
"num_services_pending" : "0",
"num_services_unknown" : "0",
"num_services_warn" : "0"
}, {"ctime" : "Current_timestamp",
"host" : "DUSTSVMDC01.ads.xyz.de",
"host_icons" : "menu",
"host_state" : "UP",
"num_services_crit" : "0",
"num_services_ok" : "34",
"num_services_pending" : "0",
"num_services_unknown" : "0",
"num_services_warn" : "0"
}, {"ctime" : "Current_timestamp",
"host" : "DUSTSVMDC02.ads.xyz.de",
"host_icons" : "menu",
"host_state" : "UP",
"num_services_crit" : "0",
"num_services_ok" : "34",
"num_services_pending" : "0",
"num_services_unknown" : "0",
"num_services_warn" : "0"
} ]
Created 06-07-2017 01:10 PM
As of NiFi 1.2.0, you can use Expression Language in JOLT specifications (NIFI-3010). The following Chain spec adds the ctime field to your input with the current timestamp:
[{
"operation": "default",
"spec": {
"*": {
"ctime": "${now()}"
}
}
}]If you want ctime you have an integer rather than a string, you can use the following EL expression:
${now():toNumber()}
Created 06-07-2017 01:10 PM
As of NiFi 1.2.0, you can use Expression Language in JOLT specifications (NIFI-3010). The following Chain spec adds the ctime field to your input with the current timestamp:
[{
"operation": "default",
"spec": {
"*": {
"ctime": "${now()}"
}
}
}]If you want ctime you have an integer rather than a string, you can use the following EL expression:
${now():toNumber()}
Created 06-07-2017 01:57 PM
Hi Matt,
now i got only this output :
[{
"ctime":"${now()}",
"host":"DUSTSADMIN.ads.xyz.de",
"host_icons":"menu",
"host_state":"UP",
"num_services_crit":"0",
"num_services_ok":"28",
"num_services_pending":"0",
"num_services_unknown":"0",
"num_services_warn":"0"
},
"ctime":"${now()}",
"host":"DUSTSVMDC01.ads.xyz.de",
"host_icons":"menu",
"host_state":"UP",
"num_services_crit":"0",
"num_services_ok":"34",
"num_services_pending":"0",
"num_services_unknown":"0",
"num_services_warn":"0"
},{"ctime":"${now()}",
"host":"DUSTSVMDC02.ads.xyz.de",
"host_icons":"menu",
"host_state":"UP",
"num_services_crit":"0",
"num_services_ok":"34",
"num_services_pending":"0",
"num_services_unknown":"0",
"num_services_warn":"0"
}]
maybe there ist something wrong with ""?
regards Timo
Created 06-07-2017 02:33 PM
I think my problem my version is : nifi-1.1.2
Created 06-07-2017 03:15 PM
Hi Matt,
after upgrading to nifi 1.2 all works fine !!!
Great work! Thanks
Created 06-07-2017 01:55 PM
Hi Matt,
now i got only this output :
[{
"ctime":"${now()}",
"host":"DUSTSADMIN.ads.xyz.de",
"host_icons":"menu",
"host_state":"UP",
"num_services_crit":"0",
"num_services_ok":"28",
"num_services_pending":"0",
"num_services_unknown":"0",
"num_services_warn":"0"
},
"ctime":"${now()}",
"host":"DUSTSVMDC01.ads.xyz.de",
"host_icons":"menu",
"host_state":"UP",
"num_services_crit":"0",
"num_services_ok":"34",
"num_services_pending":"0",
"num_services_unknown":"0",
"num_services_warn":"0"
},{"ctime":"${now()}",
"host":"DUSTSVMDC02.ads.xyz.de",
"host_icons":"menu",
"host_state":"UP",
"num_services_crit":"0",
"num_services_ok":"34",
"num_services_pending":"0",
"num_services_unknown":"0",
"num_services_warn":"0"
}]
maybe there ist something wrong with ""?
regards Timo