Migrate from the SignalFx Tracing Library for Python π
The SignalFx Tracing Library for Python is deprecated and will reach End of Support on December 17th, 2022. Replace it with the agent from the Splunk Distribution of OpenTelemetry Python.
The agent of the Splunk Distribution of OpenTelemetry Python is based on the OpenTelemetry Instrumentation for Python, an open-source project that uses the OpenTelemetry API.
Read the following instructions to learn how to migrate to the Splunk Python OTel agent.
Compatibility and requirements π
The Splunk Distribution of OpenTelemetry Python requires Python 3.7 and higher. See Python agent compatibility and requirements.
Migrate to the Splunk Distribution of OpenTelemetry Python π
To migrate from the SignalFx Tracing Library for Python to the Splunk Distribution of OpenTelemetry Python, follow these steps:
Remove the tracing library packages. See Remove the SignalFx Tracing Library for Python.
Deploy the Splunk Distribution of OpenTelemetry Python. See Deploy the Splunk Python agent.
Migrate your existing configuration. See Migrate settings for the Splunk Python OTel agent.
Start your Python service or application. See Start you Python application after completing the migration.
Note
Semantic conventions for span names and attributes change when you migrate. For more information, see Migrate from SignalFx Smart Agent to the Splunk Distribution of OpenTelemetry Collector.
Remove the SignalFx Tracing Library for Python π
Follow these steps to remove the tracing library and its dependencies:
Uninstall
signalfx-tracing
:pip uninstall signalfx-tracing
Remove
signalfx-tracing
from your requirements.txt or pyproject.toml file.If the package manager didnβt remove every dependency for
signalfx-tracing
, remove them manually:pip uninstall opentracing pip uninstall jaeger-client
Remove every instrumentation package installed by the
sfx-py-trace-bootstrap
command.Remove any additional OpenTracing instrumentation packages you installed.
Additional steps for Django applications π
The Splunk Distribution of OpenTelemetry Python doesnβt require you to add anything to INSTALLED_APPS
.
Follow these steps to update your Django configuration:
Remove
signalfx_tracing
fromINSTALLED_APPS
in settings.py.Set the
DJANGO_SETTINGS_MODULE
environment variable to the same value as in manage.py or wsgi.py.
Deploy the Splunk Python agent π
To install the Splunk Distribution of OpenTelemetry Python, see Instrument your Python application for Splunk Observability Cloud.
Migrate settings for the Splunk Python OTel agent π
To migrate settings from the SignalFx tracing library to the Splunk Distribution of OpenTelemetry Python, rename the following environment variables:
SignalFx environment variable |
OpenTelemetry environment variable |
---|---|
|
|
|
|
|
|
|
|
For more information about Splunk Python OTel settings, see Configure the Python agent for Splunk Observability Cloud.
Start you Python application after completing the migration π
Run your python application or service using splunk-py-trace
. For example, if you run your service using python main.py
, you can automatically instrument by running it with splunk-py-trace python main.py
. For more information, see Instrument your Python application for Splunk Observability Cloud.
Log injection changes π
To inject tracing metadata into log statements, see Connect Python trace data with logs for Splunk Observability Cloud.