From d1130795068a7f265f4d409b2f7190bd42b7b478 Mon Sep 17 00:00:00 2001 From: Diego Hurtado Date: Mon, 26 Apr 2021 16:39:42 -0600 Subject: [PATCH 1/3] Use traceflags object Fixes #471 --- .../src/opentelemetry/propagators/ot_trace/__init__.py | 2 +- .../tests/test_ot_trace_propagator.py | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/propagator/opentelemetry-propagator-ot-trace/src/opentelemetry/propagators/ot_trace/__init__.py b/propagator/opentelemetry-propagator-ot-trace/src/opentelemetry/propagators/ot_trace/__init__.py index 4013237749..0097a1bcfb 100644 --- a/propagator/opentelemetry-propagator-ot-trace/src/opentelemetry/propagators/ot_trace/__init__.py +++ b/propagator/opentelemetry-propagator-ot-trace/src/opentelemetry/propagators/ot_trace/__init__.py @@ -85,7 +85,7 @@ def extract( trace_id=int(traceid, 16), span_id=int(spanid, 16), is_remote=True, - trace_flags=traceflags, + trace_flags=TraceFlags(traceflags), ) ), context, diff --git a/propagator/opentelemetry-propagator-ot-trace/tests/test_ot_trace_propagator.py b/propagator/opentelemetry-propagator-ot-trace/tests/test_ot_trace_propagator.py index 5afa91d5da..f8b0a2b60a 100644 --- a/propagator/opentelemetry-propagator-ot-trace/tests/test_ot_trace_propagator.py +++ b/propagator/opentelemetry-propagator-ot-trace/tests/test_ot_trace_propagator.py @@ -248,6 +248,10 @@ def test_extract_trace_id_span_id_sampled_true(self): self.assertEqual(hex(span_context.span_id)[2:], "e457b5a2e4d86bd1") self.assertTrue(span_context.is_remote) self.assertEqual(span_context.trace_flags, TraceFlags.SAMPLED) + self.assertIsInstance( + get_current_span().get_span_context().trace_flags, + TraceFlags + ) def test_extract_trace_id_span_id_sampled_false(self): """Test valid trace_id, span_id and sampled false""" @@ -268,6 +272,10 @@ def test_extract_trace_id_span_id_sampled_false(self): self.assertEqual(hex(span_context.span_id)[2:], "e457b5a2e4d86bd1") self.assertTrue(span_context.is_remote) self.assertEqual(span_context.trace_flags, TraceFlags.DEFAULT) + self.assertIsInstance( + get_current_span().get_span_context().trace_flags, + TraceFlags + ) def test_extract_malformed_trace_id(self): """Test extraction with malformed trace_id""" From 55e15017a37a5ecb96f876940172a401d024ca1e Mon Sep 17 00:00:00 2001 From: Diego Hurtado Date: Tue, 27 Apr 2021 09:53:30 -0600 Subject: [PATCH 2/3] Add CHANGELOG entry --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 57976ae4ba..8b67a98a6d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased](https://github.com/open-telemetry/opentelemetry-python-contrib/compare/v0.200...HEAD) +### Changed +- `opentelemetry-propagator-ot-trace` Use `TraceFlags` object in `extract` + ([#472](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/472)) + ### Added - Move `opentelemetry-instrumentation` from core repository ([#465](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/465)) From c1e7286bc4fba9a72f3705e42cf61757d2449ac8 Mon Sep 17 00:00:00 2001 From: Diego Hurtado Date: Tue, 27 Apr 2021 10:04:25 -0600 Subject: [PATCH 3/3] Fix lint --- opentelemetry-instrumentation/setup.py | 4 +--- .../instrumentation/propagators.py | 4 +--- .../tests/test_bootstrap.py | 5 +---- .../tests/test_utils.py | 20 ++++--------------- .../tests/test_ot_trace_propagator.py | 6 ++---- 5 files changed, 9 insertions(+), 30 deletions(-) diff --git a/opentelemetry-instrumentation/setup.py b/opentelemetry-instrumentation/setup.py index d4f84f738b..fb3c8ff9f1 100644 --- a/opentelemetry-instrumentation/setup.py +++ b/opentelemetry-instrumentation/setup.py @@ -24,6 +24,4 @@ with open(VERSION_FILENAME) as f: exec(f.read(), PACKAGE_INFO) -setuptools.setup( - version=PACKAGE_INFO["__version__"], -) +setuptools.setup(version=PACKAGE_INFO["__version__"],) diff --git a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/propagators.py b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/propagators.py index 2fb246c9d9..8fe6b45d90 100644 --- a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/propagators.py +++ b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/propagators.py @@ -122,7 +122,5 @@ def inject( ), ) setter.set( - carrier, - _HTTP_HEADER_ACCESS_CONTROL_EXPOSE_HEADERS, - header_name, + carrier, _HTTP_HEADER_ACCESS_CONTROL_EXPOSE_HEADERS, header_name, ) diff --git a/opentelemetry-instrumentation/tests/test_bootstrap.py b/opentelemetry-instrumentation/tests/test_bootstrap.py index de978eb6d5..e5a1a86dda 100644 --- a/opentelemetry-instrumentation/tests/test_bootstrap.py +++ b/opentelemetry-instrumentation/tests/test_bootstrap.py @@ -23,10 +23,7 @@ def sample_packages(packages, rate): - sampled = sample( - list(packages), - int(len(packages) * rate), - ) + sampled = sample(list(packages), int(len(packages) * rate),) return {k: v for k, v in packages.items() if k in sampled} diff --git a/opentelemetry-instrumentation/tests/test_utils.py b/opentelemetry-instrumentation/tests/test_utils.py index e5246335c9..273c6f085c 100644 --- a/opentelemetry-instrumentation/tests/test_utils.py +++ b/opentelemetry-instrumentation/tests/test_utils.py @@ -31,24 +31,12 @@ def test_http_status_to_status_code(self): (HTTPStatus.UNAUTHORIZED, StatusCode.ERROR), (HTTPStatus.FORBIDDEN, StatusCode.ERROR), (HTTPStatus.NOT_FOUND, StatusCode.ERROR), - ( - HTTPStatus.UNPROCESSABLE_ENTITY, - StatusCode.ERROR, - ), - ( - HTTPStatus.TOO_MANY_REQUESTS, - StatusCode.ERROR, - ), + (HTTPStatus.UNPROCESSABLE_ENTITY, StatusCode.ERROR,), + (HTTPStatus.TOO_MANY_REQUESTS, StatusCode.ERROR,), (HTTPStatus.NOT_IMPLEMENTED, StatusCode.ERROR), (HTTPStatus.SERVICE_UNAVAILABLE, StatusCode.ERROR), - ( - HTTPStatus.GATEWAY_TIMEOUT, - StatusCode.ERROR, - ), - ( - HTTPStatus.HTTP_VERSION_NOT_SUPPORTED, - StatusCode.ERROR, - ), + (HTTPStatus.GATEWAY_TIMEOUT, StatusCode.ERROR,), + (HTTPStatus.HTTP_VERSION_NOT_SUPPORTED, StatusCode.ERROR,), (600, StatusCode.ERROR), (99, StatusCode.ERROR), ): diff --git a/propagator/opentelemetry-propagator-ot-trace/tests/test_ot_trace_propagator.py b/propagator/opentelemetry-propagator-ot-trace/tests/test_ot_trace_propagator.py index f8b0a2b60a..0fbcb42db9 100644 --- a/propagator/opentelemetry-propagator-ot-trace/tests/test_ot_trace_propagator.py +++ b/propagator/opentelemetry-propagator-ot-trace/tests/test_ot_trace_propagator.py @@ -249,8 +249,7 @@ def test_extract_trace_id_span_id_sampled_true(self): self.assertTrue(span_context.is_remote) self.assertEqual(span_context.trace_flags, TraceFlags.SAMPLED) self.assertIsInstance( - get_current_span().get_span_context().trace_flags, - TraceFlags + get_current_span().get_span_context().trace_flags, TraceFlags ) def test_extract_trace_id_span_id_sampled_false(self): @@ -273,8 +272,7 @@ def test_extract_trace_id_span_id_sampled_false(self): self.assertTrue(span_context.is_remote) self.assertEqual(span_context.trace_flags, TraceFlags.DEFAULT) self.assertIsInstance( - get_current_span().get_span_context().trace_flags, - TraceFlags + get_current_span().get_span_context().trace_flags, TraceFlags ) def test_extract_malformed_trace_id(self):