I am trying out Splunk on Windows Server 2012, version 6.6.3 and attempting to do a scripted lookup with a python script. My actual script (makes HTTP call, returns json, I parse and return csv) works with my own installation of Python 2.7 but when I try to run it with the built-in Splunk version I get ImportError: No module named Site
I've searched and found a couple similar posts about this but what has me scratching my head is if I run "C:\Program Files\Splunk\bin\python.exe" test.py I get
ImportError: No module named Site
Now, the only thing in test.py is the statement
print "hello"
If I run "C:\Program Files\Splunk\bin\python.exe" -S test.py I get the expected output
hello
This is a sanity test script of course, just to see if I can get it to do anything I'd expect. So what is going on with the -S (where I'm telling python to ignore site-packages I believe) vrs. not having that arg and I get an error?
Is there something wrong with my install? With a simple print statement I'd expect the built-in Python to work without issue but it does not.
Any ideas?? Thanks in advance for any input on this.
If you want to run your script the way Splunk does (with its own libraries and modules) try this:
C:\Program Files\Splunk\bin\splunk cmd python ../path to/your script.py
I'm not suggesting this will solve your issue immediately, but under the covers that is how Splunk will execute your script.
If you want to run your script the way Splunk does (with its own libraries and modules) try this:
C:\Program Files\Splunk\bin\splunk cmd python ../path to/your script.py
I'm not suggesting this will solve your issue immediately, but under the covers that is how Splunk will execute your script.
Ah, subtle difference. This runs the script as intended. Thank you for this help!!