Splunk Enterprise Security

How to run Splunk using python 3.7

pbankar
Path Finder

I'm developing a Technology AddOn (TA) using Modular Input and as per the latest Splunk norms they will be deprecating python 2.7. I'm using Splunk 8.

I'm making changes in the TA as per the Splunk Platform Upgrade Readiness App and need to know how do I test my TA if its running using python 3.7 or not.

On the command line, I'm getting this output:
alt text

0 Karma
1 Solution

kamlesh_vaghela
SplunkTrust
SplunkTrust

@pbankar

When you upgrade to version 8.0, Splunk Enterprise will continue to use the Python 2 interpreter globally by default, but Splunk Web will support only Python 3.7.

You can change python version by configuring server.conf .

Splunk Enterprise version 8.0 include a global setting, python.version, to specify which Python interpreter to use across an instance. The global setting resides in the server.conf file, located in $SPLUNK_HOME/etc/system/local/. The stanza that controls Python version is [general]

python.version is set to python2 by default in Splunk Enterprise version 8.0. To specify Python 3, set python.version = python3. These settings specify the interpreter to use if a script-level setting has not been specified, but script-level settings take precedence over the global setting, except if Python 3 is forced. 

Check Python interpreter settings in below links.

https://docs.splunk.com/Documentation/Splunk/8.0.0/Python3Migration/ChangesEnterprise

Other Reference Link:

https://docs.splunk.com/Documentation/Splunk/8.0.0/Installation/AboutupgradingREADTHISFIRST

https://docs.splunk.com/Documentation/Splunk/8.0.0/Python3Migration/AboutMigration

Python development with Splunk Enterprise: https://docs.splunk.com/Documentation/Splunk/8.0.0/Python3Migration/PythonDevelopment

Thanks

View solution in original post

kamlesh_vaghela
SplunkTrust
SplunkTrust

@pbankar

When you upgrade to version 8.0, Splunk Enterprise will continue to use the Python 2 interpreter globally by default, but Splunk Web will support only Python 3.7.

You can change python version by configuring server.conf .

Splunk Enterprise version 8.0 include a global setting, python.version, to specify which Python interpreter to use across an instance. The global setting resides in the server.conf file, located in $SPLUNK_HOME/etc/system/local/. The stanza that controls Python version is [general]

python.version is set to python2 by default in Splunk Enterprise version 8.0. To specify Python 3, set python.version = python3. These settings specify the interpreter to use if a script-level setting has not been specified, but script-level settings take precedence over the global setting, except if Python 3 is forced. 

Check Python interpreter settings in below links.

https://docs.splunk.com/Documentation/Splunk/8.0.0/Python3Migration/ChangesEnterprise

Other Reference Link:

https://docs.splunk.com/Documentation/Splunk/8.0.0/Installation/AboutupgradingREADTHISFIRST

https://docs.splunk.com/Documentation/Splunk/8.0.0/Python3Migration/AboutMigration

Python development with Splunk Enterprise: https://docs.splunk.com/Documentation/Splunk/8.0.0/Python3Migration/PythonDevelopment

Thanks

pbankar
Path Finder

Thanks, kamlesh_vaghela

0 Karma

pbankar
Path Finder

kamlesh_vaghela, I need to know one thing. to use the modular input I have to integrate the Splunklib sdk in my TA directory. How can I remove it and on runtime Splunk will resolve the

from splunklib.modularinput import *
0 Karma
Get Updates on the Splunk Community!

Stay Connected: Your Guide to May Tech Talks, Office Hours, and Webinars!

Take a look below to explore our upcoming Community Office Hours, Tech Talks, and Webinars this month. This ...

They're back! Join the SplunkTrust and MVP at .conf24

With our highly anticipated annual conference, .conf, comes the fez-wearers you can trust! The SplunkTrust, as ...

Enterprise Security Content Update (ESCU) | New Releases

Last month, the Splunk Threat Research Team had two releases of new security content via the Enterprise ...