From 4b3284c329452742a6c8c5f2567a021e1ece0897 Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Wed, 9 Apr 2025 12:54:14 +0200 Subject: [PATCH 1/9] ref: Move sampler out of integrations/opentelemetry --- sentry_sdk/integrations/opentelemetry/integration.py | 2 +- sentry_sdk/integrations/opentelemetry/span_processor.py | 2 +- sentry_sdk/{integrations/opentelemetry => }/sampler.py | 0 3 files changed, 2 insertions(+), 2 deletions(-) rename sentry_sdk/{integrations/opentelemetry => }/sampler.py (100%) diff --git a/sentry_sdk/integrations/opentelemetry/integration.py b/sentry_sdk/integrations/opentelemetry/integration.py index 1124e736ed..a857ed7adf 100644 --- a/sentry_sdk/integrations/opentelemetry/integration.py +++ b/sentry_sdk/integrations/opentelemetry/integration.py @@ -9,7 +9,7 @@ from sentry_sdk.integrations.opentelemetry.span_processor import ( SentrySpanProcessor, ) -from sentry_sdk.integrations.opentelemetry.sampler import SentrySampler +from sentry_sdk.sampler import SentrySampler from sentry_sdk.utils import logger try: diff --git a/sentry_sdk/integrations/opentelemetry/span_processor.py b/sentry_sdk/integrations/opentelemetry/span_processor.py index d82d6a03e9..96004a5c76 100644 --- a/sentry_sdk/integrations/opentelemetry/span_processor.py +++ b/sentry_sdk/integrations/opentelemetry/span_processor.py @@ -13,6 +13,7 @@ import sentry_sdk from sentry_sdk.consts import SPANDATA +from sentry_sdk.sampler import create_sampling_context from sentry_sdk.tracing import DEFAULT_SPAN_ORIGIN from sentry_sdk.utils import get_current_thread_meta from sentry_sdk.profiler.continuous_profiler import ( @@ -21,7 +22,6 @@ try_profile_lifecycle_trace_start, ) from sentry_sdk.profiler.transaction_profiler import Profile -from sentry_sdk.integrations.opentelemetry.sampler import create_sampling_context from sentry_sdk.integrations.opentelemetry.utils import ( is_sentry_span, convert_from_otel_timestamp, diff --git a/sentry_sdk/integrations/opentelemetry/sampler.py b/sentry_sdk/sampler.py similarity index 100% rename from sentry_sdk/integrations/opentelemetry/sampler.py rename to sentry_sdk/sampler.py From 7741c64e7e2c18adf49f1cb09ccd1a5cbf4cf988 Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Wed, 9 Apr 2025 13:13:07 +0200 Subject: [PATCH 2/9] ref: Move span processor out from integrations --- sentry_sdk/integrations/opentelemetry/__init__.py | 2 -- sentry_sdk/integrations/opentelemetry/integration.py | 4 ++-- sentry_sdk/{integrations/opentelemetry => }/span_processor.py | 0 3 files changed, 2 insertions(+), 4 deletions(-) rename sentry_sdk/{integrations/opentelemetry => }/span_processor.py (100%) diff --git a/sentry_sdk/integrations/opentelemetry/__init__.py b/sentry_sdk/integrations/opentelemetry/__init__.py index 3c4c1a683d..5dbd23e3a7 100644 --- a/sentry_sdk/integrations/opentelemetry/__init__.py +++ b/sentry_sdk/integrations/opentelemetry/__init__.py @@ -1,7 +1,5 @@ -from sentry_sdk.integrations.opentelemetry.span_processor import SentrySpanProcessor from sentry_sdk.integrations.opentelemetry.propagator import SentryPropagator __all__ = [ "SentryPropagator", - "SentrySpanProcessor", ] diff --git a/sentry_sdk/integrations/opentelemetry/integration.py b/sentry_sdk/integrations/opentelemetry/integration.py index a857ed7adf..23e94fd08b 100644 --- a/sentry_sdk/integrations/opentelemetry/integration.py +++ b/sentry_sdk/integrations/opentelemetry/integration.py @@ -6,10 +6,10 @@ from sentry_sdk.integrations import DidNotEnable, Integration from sentry_sdk.integrations.opentelemetry.propagator import SentryPropagator -from sentry_sdk.integrations.opentelemetry.span_processor import ( +from sentry_sdk.sampler import SentrySampler +from sentry_sdk.span_processor import ( SentrySpanProcessor, ) -from sentry_sdk.sampler import SentrySampler from sentry_sdk.utils import logger try: diff --git a/sentry_sdk/integrations/opentelemetry/span_processor.py b/sentry_sdk/span_processor.py similarity index 100% rename from sentry_sdk/integrations/opentelemetry/span_processor.py rename to sentry_sdk/span_processor.py From cf28b7b418f8dcc1c43a3f8b3b623d07fccb294b Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Wed, 9 Apr 2025 13:19:39 +0200 Subject: [PATCH 3/9] ref: Move propagator out of integrations --- sentry_sdk/integrations/opentelemetry/__init__.py | 5 ----- sentry_sdk/integrations/opentelemetry/integration.py | 2 +- sentry_sdk/{integrations/opentelemetry => }/propagator.py | 0 setup.py | 4 +--- tests/integrations/opentelemetry/test_propagator.py | 2 +- 5 files changed, 3 insertions(+), 10 deletions(-) rename sentry_sdk/{integrations/opentelemetry => }/propagator.py (100%) diff --git a/sentry_sdk/integrations/opentelemetry/__init__.py b/sentry_sdk/integrations/opentelemetry/__init__.py index 5dbd23e3a7..e69de29bb2 100644 --- a/sentry_sdk/integrations/opentelemetry/__init__.py +++ b/sentry_sdk/integrations/opentelemetry/__init__.py @@ -1,5 +0,0 @@ -from sentry_sdk.integrations.opentelemetry.propagator import SentryPropagator - -__all__ = [ - "SentryPropagator", -] diff --git a/sentry_sdk/integrations/opentelemetry/integration.py b/sentry_sdk/integrations/opentelemetry/integration.py index 23e94fd08b..a0f6b1b1d8 100644 --- a/sentry_sdk/integrations/opentelemetry/integration.py +++ b/sentry_sdk/integrations/opentelemetry/integration.py @@ -5,7 +5,7 @@ """ from sentry_sdk.integrations import DidNotEnable, Integration -from sentry_sdk.integrations.opentelemetry.propagator import SentryPropagator +from sentry_sdk.propagator import SentryPropagator from sentry_sdk.sampler import SentrySampler from sentry_sdk.span_processor import ( SentrySpanProcessor, diff --git a/sentry_sdk/integrations/opentelemetry/propagator.py b/sentry_sdk/propagator.py similarity index 100% rename from sentry_sdk/integrations/opentelemetry/propagator.py rename to sentry_sdk/propagator.py diff --git a/setup.py b/setup.py index 5f5242d838..52933f287e 100644 --- a/setup.py +++ b/setup.py @@ -85,9 +85,7 @@ def get_file_text(file_name): "unleash": ["UnleashClient>=6.0.1"], }, entry_points={ - "opentelemetry_propagator": [ - "sentry=sentry_sdk.integrations.opentelemetry:SentryPropagator" - ] + "opentelemetry_propagator": ["sentry=sentry_sdk.propagator:SentryPropagator"] }, classifiers=[ "Development Status :: 5 - Production/Stable", diff --git a/tests/integrations/opentelemetry/test_propagator.py b/tests/integrations/opentelemetry/test_propagator.py index b18e3bc400..908c447331 100644 --- a/tests/integrations/opentelemetry/test_propagator.py +++ b/tests/integrations/opentelemetry/test_propagator.py @@ -10,7 +10,7 @@ SENTRY_BAGGAGE_KEY, SENTRY_TRACE_KEY, ) -from sentry_sdk.integrations.opentelemetry.propagator import SentryPropagator +from sentry_sdk.propagator import SentryPropagator from tests.conftest import SortedBaggage From f34b0666bdc64bdb97bc0befa5c351418d065533 Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Wed, 9 Apr 2025 13:22:54 +0200 Subject: [PATCH 4/9] forgot one --- tests/integrations/opentelemetry/test_entry_points.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/integrations/opentelemetry/test_entry_points.py b/tests/integrations/opentelemetry/test_entry_points.py index cd78209432..b20d6cf601 100644 --- a/tests/integrations/opentelemetry/test_entry_points.py +++ b/tests/integrations/opentelemetry/test_entry_points.py @@ -3,7 +3,7 @@ from unittest.mock import patch from opentelemetry import propagate -from sentry_sdk.integrations.opentelemetry import SentryPropagator +from sentry_sdk.propagator import SentryPropagator def test_propagator_loaded_if_mentioned_in_environment_variable(): From 841bd0248857027f4ec45a3d5f951049d834982e Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Thu, 10 Apr 2025 11:35:49 +0200 Subject: [PATCH 5/9] move to opentelemetry --- sentry_sdk/integrations/opentelemetry/integration.py | 2 +- sentry_sdk/integrations/opentelemetry/span_processor.py | 2 +- sentry_sdk/opentelemetry/__init__.py | 5 +++++ sentry_sdk/{ => opentelemetry}/sampler.py | 0 4 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 sentry_sdk/opentelemetry/__init__.py rename sentry_sdk/{ => opentelemetry}/sampler.py (100%) diff --git a/sentry_sdk/integrations/opentelemetry/integration.py b/sentry_sdk/integrations/opentelemetry/integration.py index a857ed7adf..581918e81c 100644 --- a/sentry_sdk/integrations/opentelemetry/integration.py +++ b/sentry_sdk/integrations/opentelemetry/integration.py @@ -9,7 +9,7 @@ from sentry_sdk.integrations.opentelemetry.span_processor import ( SentrySpanProcessor, ) -from sentry_sdk.sampler import SentrySampler +from sentry_sdk.opentelemetry.sampler import SentrySampler from sentry_sdk.utils import logger try: diff --git a/sentry_sdk/integrations/opentelemetry/span_processor.py b/sentry_sdk/integrations/opentelemetry/span_processor.py index 96004a5c76..ec936125c3 100644 --- a/sentry_sdk/integrations/opentelemetry/span_processor.py +++ b/sentry_sdk/integrations/opentelemetry/span_processor.py @@ -13,9 +13,9 @@ import sentry_sdk from sentry_sdk.consts import SPANDATA -from sentry_sdk.sampler import create_sampling_context from sentry_sdk.tracing import DEFAULT_SPAN_ORIGIN from sentry_sdk.utils import get_current_thread_meta +from sentry_sdk.opentelemetry.sampler import create_sampling_context from sentry_sdk.profiler.continuous_profiler import ( try_autostart_continuous_profiler, get_profiler_id, diff --git a/sentry_sdk/opentelemetry/__init__.py b/sentry_sdk/opentelemetry/__init__.py new file mode 100644 index 0000000000..6901bcd31a --- /dev/null +++ b/sentry_sdk/opentelemetry/__init__.py @@ -0,0 +1,5 @@ +from sentry_sdk.opentelemetry.sampler import SentrySampler + +__all__ = [ + "SentrySampler", +] diff --git a/sentry_sdk/sampler.py b/sentry_sdk/opentelemetry/sampler.py similarity index 100% rename from sentry_sdk/sampler.py rename to sentry_sdk/opentelemetry/sampler.py From 5d6e318a6f29fabef73b5b9f2ce3f655a944000b Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Thu, 10 Apr 2025 11:55:07 +0200 Subject: [PATCH 6/9] alphabet --- sentry_sdk/opentelemetry/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sentry_sdk/opentelemetry/__init__.py b/sentry_sdk/opentelemetry/__init__.py index d0fcc30698..b8d1b0a44f 100644 --- a/sentry_sdk/opentelemetry/__init__.py +++ b/sentry_sdk/opentelemetry/__init__.py @@ -2,6 +2,6 @@ from sentry_sdk.opentelemetry.span_processor import SentrySpanProcessor __all__ = [ - "SentrySpanProcessor", "SentrySampler", + "SentrySpanProcessor", ] From 8819373f3d6804fe58b1b55ac8fbf3e6a36904cb Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Thu, 10 Apr 2025 12:00:26 +0200 Subject: [PATCH 7/9] fix setup.py --- setup.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 52933f287e..f8cd3e965a 100644 --- a/setup.py +++ b/setup.py @@ -85,7 +85,9 @@ def get_file_text(file_name): "unleash": ["UnleashClient>=6.0.1"], }, entry_points={ - "opentelemetry_propagator": ["sentry=sentry_sdk.propagator:SentryPropagator"] + "opentelemetry_propagator": [ + "sentry=sentry_sdk.opentelemetry.propagator:SentryPropagator" + ] }, classifiers=[ "Development Status :: 5 - Production/Stable", From db2f1b659a46c2a19308500576f31d30e8a46d79 Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Thu, 10 Apr 2025 12:03:48 +0200 Subject: [PATCH 8/9] formatting --- sentry_sdk/integrations/opentelemetry/integration.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/sentry_sdk/integrations/opentelemetry/integration.py b/sentry_sdk/integrations/opentelemetry/integration.py index 1c2d2fcfc7..bd2e478653 100644 --- a/sentry_sdk/integrations/opentelemetry/integration.py +++ b/sentry_sdk/integrations/opentelemetry/integration.py @@ -7,9 +7,7 @@ from sentry_sdk.integrations import DidNotEnable, Integration from sentry_sdk.integrations.opentelemetry.propagator import SentryPropagator from sentry_sdk.opentelemetry.sampler import SentrySampler -from sentry_sdk.opentelemetry.span_processor import ( - SentrySpanProcessor, -) +from sentry_sdk.opentelemetry.span_processor import SentrySpanProcessor from sentry_sdk.utils import logger try: From edf4d6b14fba064f8f990eae673355e681b0b31d Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Thu, 10 Apr 2025 16:10:11 +0200 Subject: [PATCH 9/9] Apply suggestions from code review Co-authored-by: Daniel Szoke <7881302+szokeasaurusrex@users.noreply.github.com> --- setup.py | 2 +- tests/integrations/opentelemetry/test_entry_points.py | 2 +- tests/integrations/opentelemetry/test_propagator.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/setup.py b/setup.py index f8cd3e965a..04bcbe2122 100644 --- a/setup.py +++ b/setup.py @@ -86,7 +86,7 @@ def get_file_text(file_name): }, entry_points={ "opentelemetry_propagator": [ - "sentry=sentry_sdk.opentelemetry.propagator:SentryPropagator" + "sentry=sentry_sdk.opentelemetry:SentryPropagator" ] }, classifiers=[ diff --git a/tests/integrations/opentelemetry/test_entry_points.py b/tests/integrations/opentelemetry/test_entry_points.py index 82a795b246..efadb67a06 100644 --- a/tests/integrations/opentelemetry/test_entry_points.py +++ b/tests/integrations/opentelemetry/test_entry_points.py @@ -3,7 +3,7 @@ from unittest.mock import patch from opentelemetry import propagate -from sentry_sdk.opentelemetry.propagator import SentryPropagator +from sentry_sdk.opentelemetry import SentryPropagator def test_propagator_loaded_if_mentioned_in_environment_variable(): diff --git a/tests/integrations/opentelemetry/test_propagator.py b/tests/integrations/opentelemetry/test_propagator.py index 166c1744e7..f57679cc3e 100644 --- a/tests/integrations/opentelemetry/test_propagator.py +++ b/tests/integrations/opentelemetry/test_propagator.py @@ -10,7 +10,7 @@ SENTRY_BAGGAGE_KEY, SENTRY_TRACE_KEY, ) -from sentry_sdk.opentelemetry.propagator import SentryPropagator +from sentry_sdk.opentelemetry import SentryPropagator from tests.conftest import SortedBaggage