Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit ea9e933

Browse files
authored
Make propagators a namespace (open-telemetry#1591)
1 parent 22cfddd commit ea9e933

File tree

11 files changed

+36
-33
lines changed

11 files changed

+36
-33
lines changed

.github/workflows/test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ env:
1010
# Otherwise, set variable to the commit of your branch on
1111
# opentelemetry-python-contrib which is compatible with these Core repo
1212
# changes.
13-
CONTRIB_REPO_SHA: 370afa618c30a9773b0594c2ea469518c8b2c274
13+
CONTRIB_REPO_SHA: 8e1dd27be3a2101c9034e480560fd5ceb6712d51
1414

1515
jobs:
1616
build:

docs/examples/auto-instrumentation/server_instrumented.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,9 @@
1414

1515
from flask import Flask, request
1616

17-
from opentelemetry import propagators, trace
17+
from opentelemetry import trace
1818
from opentelemetry.instrumentation.wsgi import collect_request_attributes
19+
from opentelemetry.propagate import extract
1920
from opentelemetry.sdk.trace import TracerProvider
2021
from opentelemetry.sdk.trace.export import (
2122
ConsoleSpanExporter,
@@ -37,7 +38,7 @@
3738
def server_request():
3839
with tracer.start_as_current_span(
3940
"server_request",
40-
context=propagators.extract(DictGetter(), request.headers),
41+
context=extract(DictGetter(), request.headers),
4142
kind=trace.SpanKind.SERVER,
4243
attributes=collect_request_attributes(request.environ),
4344
):

docs/examples/datadog_exporter/client.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,12 @@
1616

1717
from requests import get
1818

19-
from opentelemetry import propagators, trace
19+
from opentelemetry import trace
2020
from opentelemetry.exporter.datadog import (
2121
DatadogExportSpanProcessor,
2222
DatadogSpanExporter,
2323
)
24+
from opentelemetry.propagate import inject
2425
from opentelemetry.sdk import resources
2526
from opentelemetry.sdk.trace import TracerProvider
2627

@@ -46,7 +47,7 @@
4647

4748
with tracer.start_as_current_span("client-server"):
4849
headers = {}
49-
propagators.inject(dict.__setitem__, headers)
50+
inject(dict.__setitem__, headers)
5051
requested = get(
5152
"http://localhost:8082/server_request",
5253
params={"param": argv[1]},

docs/examples/datadog_exporter/server.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,14 @@
1414

1515
from flask import Flask, request
1616

17-
from opentelemetry import propagators, trace
17+
from opentelemetry import trace
1818
from opentelemetry.exporter.datadog import (
1919
DatadogExportSpanProcessor,
2020
DatadogSpanExporter,
2121
)
2222
from opentelemetry.exporter.datadog.propagator import DatadogFormat
23+
from opentelemetry.propagate import get_global_textmap, set_global_textmap
24+
from opentelemetry.propagators.composite import CompositeHTTPPropagator
2325
from opentelemetry.sdk.trace import TracerProvider
2426

2527
app = Flask(__name__)
@@ -35,19 +37,17 @@
3537
)
3638

3739
# append Datadog format for propagation to and from Datadog instrumented services
38-
global_textmap = propagators.get_global_textmap()
39-
if isinstance(
40-
global_textmap, propagators.composite.CompositeHTTPPropagator
41-
) and not any(
40+
global_textmap = get_global_textmap()
41+
if isinstance(global_textmap, CompositeHTTPPropagator) and not any(
4242
isinstance(p, DatadogFormat) for p in global_textmap._propagators
4343
):
44-
propagators.set_global_textmap(
45-
propagators.composite.CompositeHTTPPropagator(
44+
set_global_textmap(
45+
CompositeHTTPPropagator(
4646
global_textmap._propagators + [DatadogFormat()]
4747
)
4848
)
4949
else:
50-
propagators.set_global_textmap(DatadogFormat())
50+
set_global_textmap(DatadogFormat())
5151

5252
tracer = trace.get_tracer(__name__)
5353

docs/examples/django/client.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,8 @@
1616

1717
from requests import get
1818

19-
from opentelemetry import propagators, trace
19+
from opentelemetry import trace
20+
from opentelemetry.propagate import inject
2021
from opentelemetry.sdk.trace import TracerProvider
2122
from opentelemetry.sdk.trace.export import (
2223
ConsoleSpanExporter,
@@ -35,7 +36,7 @@
3536

3637
with tracer.start_as_current_span("client-server"):
3738
headers = {}
38-
propagators.inject(dict.__setitem__, headers)
39+
inject(dict.__setitem__, headers)
3940
requested = get(
4041
"http://localhost:8000",
4142
params={"param": argv[1]},

docs/getting-started.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -195,10 +195,10 @@ Following the installation of the package containing the b3 propagator, configur
195195

196196
.. code-block:: python
197197
198-
from opentelemetry import propagators
198+
from opentelemetry.propagate import set_global_textmap
199199
from opentelemetry.propagators.b3 import B3Format
200200
201-
propagators.set_global_textmap(B3Format())
201+
set_global_textmap(B3Format())
202202
203203
Use the OpenTelemetry Collector for traces
204204
------------------------------------------

opentelemetry-api/tests/propagators/test_global_httptextformat.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,10 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
import typing
1615
import unittest
1716

1817
from opentelemetry import baggage, trace
19-
from opentelemetry.propagators import extract, inject
18+
from opentelemetry.propagate import extract, inject
2019
from opentelemetry.trace import get_current_span, set_span_in_context
2120
from opentelemetry.trace.propagation.textmap import DictGetter
2221

opentelemetry-api/tests/propagators/test_propagators.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,9 @@ def test_propagators(propagators):
4040
**{"side_effect": test_propagators}
4141
)
4242

43-
import opentelemetry.propagators
43+
import opentelemetry.propagate
4444

45-
reload(opentelemetry.propagators)
45+
reload(opentelemetry.propagate)
4646

4747
@patch.dict(environ, {OTEL_PROPAGATORS: "a,b,c"})
4848
@patch("opentelemetry.propagators.composite.CompositeHTTPPropagator")
@@ -75,6 +75,6 @@ def test_propagators(propagators):
7575
**{"side_effect": test_propagators}
7676
)
7777

78-
import opentelemetry.propagators
78+
import opentelemetry.propagate
7979

80-
reload(opentelemetry.propagators)
80+
reload(opentelemetry.propagate)

shim/opentelemetry-opentracing-shim/src/opentelemetry/shim/opentracing_shim/__init__.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -99,9 +99,9 @@
9999
UnsupportedFormatException,
100100
)
101101

102-
from opentelemetry import propagators
103102
from opentelemetry.baggage import get_baggage, set_baggage
104103
from opentelemetry.context import Context, attach, detach, get_value, set_value
104+
from opentelemetry.propagate import get_global_textmap
105105
from opentelemetry.shim.opentracing_shim import util
106106
from opentelemetry.shim.opentracing_shim.version import __version__
107107
from opentelemetry.trace import INVALID_SPAN_CONTEXT, DefaultSpan, Link
@@ -682,7 +682,7 @@ def inject(self, span_context, format: object, carrier: object):
682682
if format not in self._supported_formats:
683683
raise UnsupportedFormatException
684684

685-
propagator = propagators.get_global_textmap()
685+
propagator = get_global_textmap()
686686

687687
ctx = set_span_in_context(DefaultSpan(span_context.unwrap()))
688688
propagator.inject(type(carrier).__setitem__, carrier, context=ctx)
@@ -712,7 +712,7 @@ def extract(self, format: object, carrier: object):
712712
if format not in self._supported_formats:
713713
raise UnsupportedFormatException
714714

715-
propagator = propagators.get_global_textmap()
715+
propagator = get_global_textmap()
716716
ctx = propagator.extract(self._carrier_getter, carrier)
717717
span = get_current_span(ctx)
718718
if span is not None:

shim/opentelemetry-opentracing-shim/tests/test_shim.py

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@
2121

2222
import opentracing
2323

24-
from opentelemetry import propagators, trace
24+
from opentelemetry import trace
25+
from opentelemetry.propagate import get_global_textmap, set_global_textmap
2526
from opentelemetry.sdk.trace import TracerProvider
2627
from opentelemetry.shim.opentracing_shim import (
2728
SpanContextShim,
@@ -46,15 +47,15 @@ def setUp(self):
4647
@classmethod
4748
def setUpClass(cls):
4849
# Save current propagator to be restored on teardown.
49-
cls._previous_propagator = propagators.get_global_textmap()
50+
cls._previous_propagator = get_global_textmap()
5051

5152
# Set mock propagator for testing.
52-
propagators.set_global_textmap(MockTextMapPropagator())
53+
set_global_textmap(MockTextMapPropagator())
5354

5455
@classmethod
5556
def tearDownClass(cls):
5657
# Restore previous propagator.
57-
propagators.set_global_textmap(cls._previous_propagator)
58+
set_global_textmap(cls._previous_propagator)
5859

5960
def test_shim_type(self):
6061
# Verify shim is an OpenTracing tracer.
@@ -542,15 +543,15 @@ def test_extract_empty_context_returns_invalid_context(self):
542543
"""In the case where the propagator cannot extract a
543544
SpanContext, extract should return and invalid span context.
544545
"""
545-
_old_propagator = propagators.get_global_textmap()
546-
propagators.set_global_textmap(NOOPTextMapPropagator())
546+
_old_propagator = get_global_textmap()
547+
set_global_textmap(NOOPTextMapPropagator())
547548
try:
548549
carrier = {}
549550

550551
ctx = self.shim.extract(opentracing.Format.HTTP_HEADERS, carrier)
551552
self.assertEqual(ctx.unwrap(), trace.INVALID_SPAN_CONTEXT)
552553
finally:
553-
propagators.set_global_textmap(_old_propagator)
554+
set_global_textmap(_old_propagator)
554555

555556
def test_extract_text_map(self):
556557
"""Test `extract()` method for Format.TEXT_MAP."""

0 commit comments

Comments
 (0)