From d39e16a2bd2093dec8f7b1780a591872ef72c0c6 Mon Sep 17 00:00:00 2001 From: Anton Pirker Date: Wed, 14 Dec 2022 16:54:13 +0100 Subject: [PATCH] Added basic docs for basic otel support in Python SDK. --- .../opentelemetry-install/python.mdx | 9 +++++++ .../opentelemetry-setup/python.mdx | 26 +++++++++++++++++++ .../instrumentation/opentelemetry.mdx | 4 +-- 3 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 src/platform-includes/performance/opentelemetry-install/python.mdx create mode 100644 src/platform-includes/performance/opentelemetry-setup/python.mdx diff --git a/src/platform-includes/performance/opentelemetry-install/python.mdx b/src/platform-includes/performance/opentelemetry-install/python.mdx new file mode 100644 index 00000000000000..4e317ed9a6d8de --- /dev/null +++ b/src/platform-includes/performance/opentelemetry-install/python.mdx @@ -0,0 +1,9 @@ + + +Sentry requires `opentelemetry-distro` version `0.350b0` or higher. + + + +```bash +pip install --upgrade 'sentry-sdk[opentelemetry]' +``` diff --git a/src/platform-includes/performance/opentelemetry-setup/python.mdx b/src/platform-includes/performance/opentelemetry-setup/python.mdx new file mode 100644 index 00000000000000..d04682046909bf --- /dev/null +++ b/src/platform-includes/performance/opentelemetry-setup/python.mdx @@ -0,0 +1,26 @@ +Initialize Sentry for tracing and set the `instrumenter` to `otel`: + +```python +import sentry_sdk + +sentry_sdk.init( + dsn="___PUBLIC_DSN___", + traces_sample_rate=1.0, + # set the instrumenter to use OpenTelemetry instead of Sentry + instrumenter="otel", +) +``` + +This disables all Sentry instrumentation and relies on the chosen OpenTelemetry tracers for creating spans. + +Next, configure OpenTelemetry as you need and hook in the Sentry span processor and propagator: + +```python +from opentelemetry import trace +from opentelemetry.propagate import set_global_textmap +from sentry_sdk.integrations.opentelemetry import SentrySpanProcessor, SentryPropagator + +provider = trace.get_tracer_provider() +provider.add_span_processor(SentrySpanProcessor()) +set_global_textmap(SentryPropagator()) +``` diff --git a/src/platforms/common/performance/instrumentation/opentelemetry.mdx b/src/platforms/common/performance/instrumentation/opentelemetry.mdx index 44fc98c93d4966..12b2e3ffb42baa 100644 --- a/src/platforms/common/performance/instrumentation/opentelemetry.mdx +++ b/src/platforms/common/performance/instrumentation/opentelemetry.mdx @@ -2,12 +2,12 @@ title: OpenTelemetry Support sidebar_order: 20 supported: - - node - javascript.nextjs + - node + - python - ruby notSupported: - javascript - - python - dart - flutter - react-native