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
Get Updates on the Splunk Community!

Shape the Future of Splunk: Join the Product Research Lab!

Join the Splunk Product Research Lab and connect with us in the Slack channel #product-research-lab to get ...

Auto-Injector for Everything Else: Making OpenTelemetry Truly Universal

You might have seen Splunk’s recent announcement about donating the OpenTelemetry Injector to the ...

[Puzzles] Solve, Learn, Repeat: Character substitutions with Regular Expressions

This challenge was first posted on Slack #puzzles channelFor BORE at .conf23, we had a puzzle question which ...