- Mark as New
- Bookmark Message
- Subscribe to Message
- Mute Message
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
How to get filtered data with spath?
developer_de
New Member
05-28-2018
02:34 AM
I am trying to build stats for a set of JSON data which looks like this:
{
"ts":1527498793267,
"version":"1.12.7",
"data":{
"myList":[
{
"id":"180528_090203",
"nativeRequestReceived":1,
"nativeResponseSent":1
},
{
"id":"180528_090129",
"nativeRequestReceived":1,
"nativeResponseSent":1
}
],
"freemem":6534152192
},
"time":"2018-05-28T09:13:13.267Z",
"v":0
}
I am using following splunk command to build stats table:
spath path=data.myList{} output=myList | spath input=myList | stats sum(nativeRequestReceived) sum(nativeResponseSent) by id
I use sum here because there will be multiple JSON objects like the one written above and I would like to add all nativeRequestReceived and nativeResponseSent for each id and group them by id. It can be seen clearly that there are 2 different ids each with 1 nativeRequestReceived. But the output looks like this. It ignores one of the ids. Can someone help me in clarifying what went wrong here?
id sum(nativeRequestReceived) sum(nativeResponseSent)
180528_090203 1 1
Thanks
- Mark as New
- Bookmark Message
- Subscribe to Message
- Mute Message
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

ansif
Motivator
06-11-2018
12:35 AM
Hi,
Have you tried below answer? Accept if works.
Thanks
- Mark as New
- Bookmark Message
- Subscribe to Message
- Mute Message
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

ansif
Motivator
06-08-2018
05:25 AM
| makeresults |eval _raw="{
\"ts\":1527498793267,
\"version\":\"1.12.7\",
\"data\":{
\"myList\":[
{
\"id\":\"180528_090203\",
\"nativeRequestReceived\":1,
\"nativeResponseSent\":1
},
{
\"id\":\"180528_090129\",
\"nativeRequestReceived\":1,
\"nativeResponseSent\":1
}
],
\"freemem\":6534152192
},
\"time\":\"2018-05-28T09:13:13.267Z\",
\"v\":0
}"|spath output=id path=data.myList{}.id
| spath output=nativeRequestReceived path=data.myList{}.nativeRequestReceived
| spath output=nativeResponseSent path=data.myList{}.nativeResponseSent| stats sum(nativeRequestReceived) sum(nativeResponseSent) by id
