Hi,
I am new to Splunk and I have been trying to generate report table format using json data, I am able to spath and output the value to the table. But There some object in json which is unpredictable those I want to get by using parent key and append the value based on condition. Below is the sample json event
{
"tag": "salt/job/20180322112723081888/ret/minion1",
"data": {
"fun_args": ["install.centos7.soft", {
"test": true
}],
"jid": "20180322112723081888",
"return": {
"file_|-/etc/resolve.conf_|-/etc/resolve.conf_|-append": {
"comment": "File /etc/resolve.conf is set to be updated",
"pchanges": {},
"name": "/etc/resolve.conf",
"start_time": "11:27:33.462182",
"result": null,
"duration": 3.232,
"__run_num__": 27,
"__sls__": "install.centos7.resolve",
"changes": {
"diff": "--- \n\n+++ \n\n@@ -0,0 +1 @@\n\n+-a nameserver 8.8.8.8"
},
"__id__": "/etc/resolve.conf"
},
"pkg_|-remove_rservices_|-remove_rservices_|-purged": {
"comment": "All specified packages are already absent",
"name": "remove_rservices",
"start_time": "11:27:33.229081",
"result": true,
"duration": 0.608,
"__run_num__": 7,
"__sls__": "install.centos7.soft",
"changes": {},
"__id__": "remove_rservices"
}
},
"retcode": 0,
"success": true,
"cmd": "_return",
"_stamp": "2018-03-22T11:27:33.945590",
"fun": "state.apply",
"id": "minion-1",
"out": "highstate"
}
}
In this json I want to extract each object from return key, there is condition if object key changes don't have vale go for next object or if changes have value append "sls" value in table.
Below is the target sample table:
minion state changes
-----------------------------------------------------------------------------------------
minion-1 install.centos7.soft install.centos7.resolve
Changes can be multi value for single minion
Can anyone please suggest me how I can achieve this
Thanks
Did you ever find an answer for your question?