Splunk Dev

How do I translate a GUI search query into a python API query?

lfast12
Explorer

newbie question...
I'd like to know the appropriate Python API syntax for the following GUI query:

source="/var/log/my-test.log" index="testing" sourcetype="_json"

I get a good set of results running it in the GUI but I'm always getting 0 results from the API. I'm working off the API docs with the following base code:

kwargs_blockingsearch = {"exec_mode": "blocking"}
searchquery_blocking = "search * | head 10"
job = jobs.create(searchquery_blocking, **kwargs_blockingsearch)
so...
what's the correct syntax for replacing "search *|head 10" with my query?

Labels (1)
Tags (2)
0 Karma

kamlesh_vaghela
SplunkTrust
SplunkTrust

@lfast12

Just replace it with your search.

searchquery_blocking = 'search source="/var/log/my-test.log" index="testing" sourcetype="_json" '

OR

searchquery_blocking = "search source=\"/var/log/my-test.log\" index=\"testing\" sourcetype=\"_json\" '

Check section To create a blocking search and display properties of the job in below link.

http://dev.splunk.com/view/python-sdk/SP-CAAAEE5

lfast12
Explorer

Thanks Kamlesh,
That didn't work but it put me on the right track. Here's what finally worked:

kwargs_blockingsearch = {"exec_mode": "blocking"}
searchquery_blocking = 'search source="/var/log/splunk-test.log" index="testing" sourcetype="_json"'
job = jobs.create(searchquery_blocking, **kwargs_blockingsearch)

The only difference is prefixing your suggestion with 'search ...'

Simple enough but when there are too many choices you can easily go down the wrong path. Thanks again.

0 Karma

kamlesh_vaghela
SplunkTrust
SplunkTrust

@lfast12

Yes. I missed adding the search command. Updated answer. When we execute any search from Python or CURL we need to add search initially which is not required in GUI. Please upvote and accept this answer if it helps you.

Thanks

0 Karma
Got questions? Get answers!

Join the Splunk Community Slack to learn, troubleshoot, and make connections with fellow Splunk practitioners in real time!

Meet up IRL or virtually!

Join Splunk User Groups to connect and learn in-person by region or remotely by topic or industry.

Get Updates on the Splunk Community!

Manage Edge Processor pipelines end to end with APIs

This guide uses the Data Management APIs to create an Edge Processor, onboard one instance, deploy a pipeline ...

Splunk Brings Proof of Control to Digital Asset Transfers

Digital assets now sit inside the core of financial services. HSBC launched its Tokenized Deposit Service in ...

Manage Ingest Processor pipelines end to end with APIs

This guide uses the Data Management APIs to create an Ingest Processor pipeline, deploy it to the ...