From c5948a99cd5b15999b8f97484aa951c5f7df41b2 Mon Sep 17 00:00:00 2001 From: Lev Vereshchagin Date: Tue, 23 Sep 2025 14:56:38 +0300 Subject: [PATCH 1/3] 1 --- microbootstrap/instruments/opentelemetry_instrument.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/microbootstrap/instruments/opentelemetry_instrument.py b/microbootstrap/instruments/opentelemetry_instrument.py index c2a91f1..a4f0d8d 100644 --- a/microbootstrap/instruments/opentelemetry_instrument.py +++ b/microbootstrap/instruments/opentelemetry_instrument.py @@ -96,17 +96,14 @@ class BaseOpentelemetryInstrument(Instrument[OpentelemetryConfigT]): def _load_instrumentors(self) -> None: for entry_point in entry_points(group="opentelemetry_instrumentor"): if entry_point.name in self.instrument_config.opentelemetry_disabled_instrumentations: - LOGGER_OBJ.debug("Instrumentation skipped for library", entry_point_name=entry_point.name) continue try: entry_point.load()().instrument(tracer_provider=self.tracer_provider) - LOGGER_OBJ.debug("Instrumented", entry_point_name=entry_point.name) except DependencyConflictError as exc: LOGGER_OBJ.debug("Skipping instrumentation", entry_point_name=entry_point.name, reason=exc.conflict) continue except ModuleNotFoundError as exc: - LOGGER_OBJ.debug("Skipping instrumentation", entry_point_name=entry_point.name, reason=exc.msg) continue except ImportError: LOGGER_OBJ.debug("Importing failed, skipping it", entry_point_name=entry_point.name) From 39424ddf0ba6f6d989c8ad1a4dde33ebd8587c36 Mon Sep 17 00:00:00 2001 From: Lev Vereshchagin Date: Tue, 23 Sep 2025 14:57:40 +0300 Subject: [PATCH 2/3] Remove unused exception variable in opentelemetry instrument --- microbootstrap/instruments/opentelemetry_instrument.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/microbootstrap/instruments/opentelemetry_instrument.py b/microbootstrap/instruments/opentelemetry_instrument.py index a4f0d8d..4c37b13 100644 --- a/microbootstrap/instruments/opentelemetry_instrument.py +++ b/microbootstrap/instruments/opentelemetry_instrument.py @@ -103,7 +103,7 @@ def _load_instrumentors(self) -> None: except DependencyConflictError as exc: LOGGER_OBJ.debug("Skipping instrumentation", entry_point_name=entry_point.name, reason=exc.conflict) continue - except ModuleNotFoundError as exc: + except ModuleNotFoundError: continue except ImportError: LOGGER_OBJ.debug("Importing failed, skipping it", entry_point_name=entry_point.name) From 631e2ce58f738bb471949273476f48c330b9b3b4 Mon Sep 17 00:00:00 2001 From: Lev Vereshchagin Date: Tue, 23 Sep 2025 14:59:37 +0300 Subject: [PATCH 3/3] Fix opentelemetry instrumentor loading and test mocks --- microbootstrap/instruments/opentelemetry_instrument.py | 2 +- tests/instruments/test_opentelemetry.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/microbootstrap/instruments/opentelemetry_instrument.py b/microbootstrap/instruments/opentelemetry_instrument.py index 4c37b13..0afa589 100644 --- a/microbootstrap/instruments/opentelemetry_instrument.py +++ b/microbootstrap/instruments/opentelemetry_instrument.py @@ -94,7 +94,7 @@ class BaseOpentelemetryInstrument(Instrument[OpentelemetryConfigT]): ready_condition = "Provide all necessary config parameters" def _load_instrumentors(self) -> None: - for entry_point in entry_points(group="opentelemetry_instrumentor"): + for entry_point in entry_points(group="opentelemetry_instrumentor"): # type: ignore[no-untyped-call] if entry_point.name in self.instrument_config.opentelemetry_disabled_instrumentations: continue diff --git a/tests/instruments/test_opentelemetry.py b/tests/instruments/test_opentelemetry.py index d048d36..c09aa63 100644 --- a/tests/instruments/test_opentelemetry.py +++ b/tests/instruments/test_opentelemetry.py @@ -1,5 +1,6 @@ import contextlib import typing +from unittest import mock from unittest.mock import AsyncMock, MagicMock, Mock, patch import fastapi @@ -126,7 +127,7 @@ async def test_handler() -> None: [ MagicMock(), MagicMock(load=MagicMock(side_effect=ImportError)), - MagicMock(load=MagicMock(side_effect=DependencyConflictError("Hello"))), + MagicMock(load=MagicMock(side_effect=DependencyConflictError(mock.Mock()))), MagicMock(load=MagicMock(side_effect=ModuleNotFoundError)), ], "ok",