Knowledge Management

How to filter a field with multiple values for a key via collection.data.query?

smitapatankar
Engager

I am able to fetch data using filter as query=json.dumps({'status': 'Fixed'})
But, am not able to filter data for multiple values.
Its either giving data for only one of the two values or not giving data at all or giving some kind of an error.
I want to do something like query=json.dumps({'status': ['Fixed', 'New']})

code:

import json
import splunklib.client as client
service = client.connect(
host='xxxx', port=xxxx, username='xxxx', password='xxxxx', owner='xxxxx', app='xxxx')
collection = service.kvstore['xxxx']
response = collection.data.query(********) --> pass a query here
print(response)

0 Karma

YassirLaaroussi
Observer

Hello,
You can use the "$or" or "$and" operator in your json query, here is an example that worked for me:

query = json.dumps({"$or":[{"id": "X354" },{"id":"Y762"}]})
data = collection.data.query(query =query) 

Ressources : https://docs.splunk.com/Documentation/Splunk/8.0.4/RESTREF/RESTkvstore

0 Karma
Get Updates on the Splunk Community!

Aligning Observability Costs with Business Value: Practical Strategies

 Join us for an engaging Tech Talk on Aligning Observability Costs with Business Value: Practical ...

Mastering Data Pipelines: Unlocking Value with Splunk

 In today's AI-driven world, organizations must balance the challenges of managing the explosion of data with ...

Splunk Up Your Game: Why It's Time to Embrace Python 3.9+ and OpenSSL 3.0

Did you know that for Splunk Enterprise 9.4, Python 3.9 is the default interpreter? This shift is not just a ...