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

Skip to content

Commit e53edd5

Browse files
codebotenc24t
authored andcommitted
Add warning to OT shim log/log_event calls (open-telemetry#255)
1 parent 6d1cd1f commit e53edd5

File tree

3 files changed

+32
-4
lines changed

3 files changed

+32
-4
lines changed

ext/opentelemetry-ext-opentracing-shim/setup.cfg

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ package_dir=
3939
=src
4040
packages=find_namespace:
4141
install_requires =
42+
Deprecated >= 1.2.6
4243
opentracing
4344
opentelemetry-api
4445

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

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
import logging
1616

1717
import opentracing
18+
from deprecated import deprecated
1819

1920
from opentelemetry.ext.opentracing_shim import util
2021

@@ -77,6 +78,14 @@ def log_kv(self, key_values, timestamp=None):
7778
self._otel_span.add_event(event_name, event_timestamp, key_values)
7879
return self
7980

81+
@deprecated(reason="This method is deprecated in favor of log_kv")
82+
def log(self, **kwargs):
83+
super().log(**kwargs)
84+
85+
@deprecated(reason="This method is deprecated in favor of log_kv")
86+
def log_event(self, event, payload=None):
87+
super().log_event(event, payload=payload)
88+
8089
def set_baggage_item(self, key, value):
8190
logger.warning(
8291
"Calling unimplemented method set_baggage_item() on class %s",
@@ -91,10 +100,6 @@ def get_baggage_item(self, key):
91100
)
92101
# TODO: Implement.
93102

94-
# TODO: Verify calls to deprecated methods `log_event()` and `log()` on
95-
# base class work properly (it's probably fine because both methods call
96-
# `log_kv()`).
97-
98103

99104
class ScopeShim(opentracing.Scope):
100105
"""A `ScopeShim` wraps the OpenTelemetry functionality related to span

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

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -406,6 +406,28 @@ def test_log_kv(self):
406406
# biggest possible loss of precision.
407407
self.assertAlmostEqual(result, now, places=6)
408408

409+
def test_log(self):
410+
"""Test the deprecated `log` method on `Span` objects."""
411+
412+
with self.shim.start_span("TestSpan") as span:
413+
with self.assertWarns(DeprecationWarning):
414+
span.log(event="foo", payload="bar")
415+
416+
self.assertEqual(span.unwrap().events[0].attributes["event"], "foo")
417+
self.assertEqual(span.unwrap().events[0].attributes["payload"], "bar")
418+
self.assertIsNotNone(span.unwrap().events[0].timestamp)
419+
420+
def test_log_event(self):
421+
"""Test the deprecated `log_event` method on `Span` objects."""
422+
423+
with self.shim.start_span("TestSpan") as span:
424+
with self.assertWarns(DeprecationWarning):
425+
span.log_event("foo", "bar")
426+
427+
self.assertEqual(span.unwrap().events[0].attributes["event"], "foo")
428+
self.assertEqual(span.unwrap().events[0].attributes["payload"], "bar")
429+
self.assertIsNotNone(span.unwrap().events[0].timestamp)
430+
409431
def test_span_context(self):
410432
"""Test construction of `SpanContextShim` objects."""
411433

0 commit comments

Comments
 (0)