Getting Data In

How can I query and find records which have an empty array?

New Member

My JSON looks like this,

{
"id":"studentNumber",
"courses" : [ {
"course" : "Analysis of Alg"
},
{
"course": "game dev"
}

]

}

I would like to get all the student numbers who haven't registered for any courses --> where "courses" array is empty.

Tags (2)
0 Karma

SplunkTrust
SplunkTrust

@ dreddy123

Can you please try this?

YOUR_SEARCH  | rename courses{}.course as courses_course | where isnull(courses_course) 

My Sample Search:

| makeresults | eval _raw="{\"id\":\"studentNumber\",\"courses\":[{\"course\" : \"Analysis of Alg\"},{\"course\": \"game dev\"}]}" | append [ | makeresults | eval _raw="{\"id\":\"studentNumber\",\"courses\":[]}" ] |kv | rename courses{}.course as courses_course | where isnull(courses_course)

Thanks

0 Karma

Explorer

Does courses show up as a field in those events? If not, you can use | where isnull(courses)

0 Karma

New Member

{
"id":"studentNumber",
"courses" : [ ]
}
it will show up like this when no courses are registered.

0 Karma

Explorer

To be a bit more specific, is courses extracted as a field and if so, what is the value?

0 Karma