Splunk Cloud Platform
Check this manual often for updated information about the Splunk platform Python 3 migration. The content is subject to change.
Support for lower versions of Python -- and for any app that is compatible only with those versions of Python -- is being removed from Splunk Cloud Platform. All apps that use Python should be kept current with the latest version of Python to continue to be deployed in Splunk Cloud Platform. Splunk will upgrade all supported apps vetted for Splunk Cloud Platform as soon as they can be made available.
What Should I Do Next?
To prepare for the removal of Python 2.7, keep all your Splunk-supported apps up to date with their latest versions. The latest version of these apps will be compatible with Python 3.7 for now, and with Python 3.9 as it becomes available.
If you need to temporarily downgrade the Python runtime version of your Splunk Cloud Platform deployment, see Downgrade Python version in Splunk Cloud Platform in the Admin Config Service Manual. You can then prepare for upgrade to Python 3 without breaking your apps.
As a best practice, update your apps to be compatible with Python 3.9 as soon as possible. You can test your apps in Splunk Enterprise 9.3 or higher for Python 3.9 compatibility.
Complete the steps below to ensure all 3rd-party Splunkbase and private apps in your Splunk Cloud Platform instances are Python 3.7 compatible for now, and compatible with Python 3.9 when it is available:
1. Splunkbase apps: all Splunk Cloud Platform customers must install Splunk Cloud Platform 8.x or higher compatible versions of all Splunkbase 3rd-party apps. Please note the following regarding Splunkbase apps and Python 3.7 compatibility:
- All Splunk Supported apps and add-ons are Python 3.7 compatible and will be upgraded in your Splunk Cloud Platform environment as needed.
- Any app or add-on that is listed as Splunk Cloud Platform 8.0 compatible is Python 3.7 compatible.
2. Private apps: all private apps installed in all Splunk Cloud Platform environments need to also be upgraded for Python 3.x compatibility. This may apply regardless of what version of Splunk Cloud Platform you are on, since there may be private apps still using older versions of Python in your environment. Splunk provides multiple resources to help with the upgrade:
- Identify necessary app changes. Administrators can use the Upgrade Readiness app in your Splunk Cloud Platform environment to identify all private apps that use Python. App developers can refer to Python development with Splunk Enterprise to identify app features that need to be updated, and Python code compatibility for common code fixes. The Splunk AppInspect API can be used to scan apps for necessary changes, and to validate apps once upgraded.
- Upgrade your apps. Splunk Cloud Platform customers should use the Six compatibility libraries for Python 2 and 3 compatibility.
- To enable better self-service of your apps, leverage the Packaging Toolkit when building your apps.
3. Unused apps: any Splunkbase 3rd-party or private apps that have not been upgraded for Python 3.7 compatibility must be removed from your Splunk Cloud Platform environment.
App submission
Apps vetted for Splunk Cloud Platform must be resubmitted for new Cloud vetting after the app has been made Python 3-compatible.
Ensure that private apps and Splunkbase apps are compatible with Splunk Enterprise version 8.x or higher before submitting them for installation.
Apps for Splunk Cloud Platform will follow the same guidelines as on-premises apps, with the added requirement of passing Cloud vetting.
Python 3.7 Code Compatibility | Python with Splunk Enterprise Security |
This documentation applies to the following versions of Splunk® Enterprise: 9.1.6, 9.1.7, 9.3.0, 9.3.1, 9.3.2, 9.4.0
Feedback submitted, thanks!