File tree Expand file tree Collapse file tree 2 files changed +42
-21
lines changed
src/opentelemetry/propagate Expand file tree Collapse file tree 2 files changed +42
-21
lines changed Original file line number Diff line number Diff line change @@ -130,28 +130,31 @@ def inject(
130130)
131131
132132
133- for propagator in environ_propagators .split ("," ):
134- propagator = propagator .strip ()
135-
136- try :
137-
138- propagators .append ( # type: ignore
139- next ( # type: ignore
140- iter ( # type: ignore
141- entry_points ( # type: ignore
142- group = "opentelemetry_propagator" ,
143- name = propagator ,
133+ if environ_propagators .lower () == "none" :
134+ propagators = []
135+ else :
136+ for propagator in environ_propagators .split ("," ):
137+ propagator = propagator .strip ()
138+
139+ try :
140+
141+ propagators .append ( # type: ignore
142+ next ( # type: ignore
143+ iter ( # type: ignore
144+ entry_points ( # type: ignore
145+ group = "opentelemetry_propagator" ,
146+ name = propagator ,
147+ )
144148 )
145- )
146- ).load ()()
147- )
148- except StopIteration :
149- raise ValueError (
150- f"Propagator { propagator } not found. It is either misspelled or not installed."
151- )
152- except Exception : # pylint: disable=broad-exception-caught
153- logger .exception ("Failed to load propagator: %s" , propagator )
154- raise
149+ ).load ()()
150+ )
151+ except StopIteration :
152+ raise ValueError (
153+ f"Propagator { propagator } not found. It is either misspelled or not installed."
154+ )
155+ except Exception : # pylint: disable=broad-exception-caught
156+ logger .exception ("Failed to load propagator: %s" , propagator )
157+ raise
155158
156159
157160_HTTP_TEXT_FORMAT = composite .CompositePropagator (propagators ) # type: ignore
Original file line number Diff line number Diff line change @@ -50,6 +50,24 @@ def test_propagators(propagators):
5050
5151 reload (opentelemetry .propagate )
5252
53+ @patch .dict (environ , {OTEL_PROPAGATORS : "none" })
54+ @patch ("opentelemetry.propagators.composite.CompositePropagator" )
55+ def test_no_propagators_loaded (self , mock_compositehttppropagator ):
56+ def test_propagators (propagators ):
57+ self .assertEqual (
58+ propagators , []
59+ ) # Expecting an empty list of propagators
60+
61+ mock_compositehttppropagator .configure_mock (
62+ ** {"side_effect" : test_propagators }
63+ )
64+
65+ from importlib import reload
66+
67+ import opentelemetry .propagate
68+
69+ reload (opentelemetry .propagate )
70+
5371 @patch .dict (environ , {OTEL_PROPAGATORS : "a, b, c " })
5472 @patch ("opentelemetry.propagators.composite.CompositePropagator" )
5573 @patch ("opentelemetry.util._importlib_metadata.entry_points" )
You can’t perform that action at this time.
0 commit comments