Skip to content

Commit a11c0cc

Browse files
authored
Suppress warning for SDK instantiation of InstrumentationInfo (open-telemetry#3041)
1 parent 5574f7e commit a11c0cc

File tree

2 files changed

+17
-6
lines changed

2 files changed

+17
-6
lines changed

opentelemetry-sdk/src/opentelemetry/sdk/trace/__init__.py

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@
3737
Type,
3838
Union,
3939
)
40+
from warnings import filterwarnings, resetwarnings
4041

4142
from deprecated import deprecated
4243

@@ -1167,16 +1168,20 @@ def get_tracer(
11671168
logger.error("get_tracer called with missing module name.")
11681169
if instrumenting_library_version is None:
11691170
instrumenting_library_version = ""
1171+
1172+
filterwarnings("ignore", category=DeprecationWarning)
1173+
instrumentation_info = InstrumentationInfo(
1174+
instrumenting_module_name,
1175+
instrumenting_library_version,
1176+
schema_url,
1177+
)
1178+
resetwarnings()
11701179
return Tracer(
11711180
self.sampler,
11721181
self.resource,
11731182
self._active_span_processor,
11741183
self.id_generator,
1175-
InstrumentationInfo(
1176-
instrumenting_module_name,
1177-
instrumenting_library_version,
1178-
schema_url,
1179-
),
1184+
instrumentation_info,
11801185
self._span_limits,
11811186
InstrumentationScope(
11821187
instrumenting_module_name,

opentelemetry-sdk/tests/trace/test_trace.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
from time import time_ns
2424
from typing import Optional
2525
from unittest import mock
26+
from unittest.mock import Mock
2627

2728
from opentelemetry import trace as trace_api
2829
from opentelemetry.context import Context
@@ -39,7 +40,7 @@
3940
OTEL_TRACES_SAMPLER,
4041
OTEL_TRACES_SAMPLER_ARG,
4142
)
42-
from opentelemetry.sdk.trace import Resource
43+
from opentelemetry.sdk.trace import Resource, TracerProvider
4344
from opentelemetry.sdk.trace.id_generator import RandomIdGenerator
4445
from opentelemetry.sdk.trace.sampling import (
4546
ALWAYS_OFF,
@@ -58,6 +59,11 @@
5859

5960

6061
class TestTracer(unittest.TestCase):
62+
def test_no_deprecated_warning(self):
63+
with self.assertRaises(AssertionError):
64+
with self.assertWarns(DeprecationWarning):
65+
TracerProvider(Mock(), Mock()).get_tracer(Mock(), Mock())
66+
6167
def test_extends_api(self):
6268
tracer = new_tracer()
6369
self.assertIsInstance(tracer, trace.Tracer)

0 commit comments

Comments
 (0)