diff --git a/e2e-test-server/constraints.txt b/e2e-test-server/constraints.txt index 1c5154da..11b08b70 100644 --- a/e2e-test-server/constraints.txt +++ b/e2e-test-server/constraints.txt @@ -16,7 +16,7 @@ Jinja2==2.11.3 libcst==0.3.18 MarkupSafe==1.1.1 mypy-extensions==0.4.3 -opentelemetry-api==1.1.0 +opentelemetry-api==1.4.0 opentelemetry-sdk==1.1.0 opentelemetry-semantic-conventions==0.20b0 packaging==20.9 diff --git a/opentelemetry-exporter-gcp-trace/CHANGELOG.md b/opentelemetry-exporter-gcp-trace/CHANGELOG.md index 98c4a9bd..26e5911d 100644 --- a/opentelemetry-exporter-gcp-trace/CHANGELOG.md +++ b/opentelemetry-exporter-gcp-trace/CHANGELOG.md @@ -4,6 +4,8 @@ - Add support for Python 3.11 ([#240](https://github.com/GoogleCloudPlatform/opentelemetry-operations-python/pull/240)) +- Upgrade `opentelemetry-api` dependency to version 1.4 or newer + ([#238](https://github.com/GoogleCloudPlatform/opentelemetry-operations-python/pull/238)) ## Version 1.4.0 diff --git a/opentelemetry-exporter-gcp-trace/setup.cfg b/opentelemetry-exporter-gcp-trace/setup.cfg index 511f5f75..02d64630 100644 --- a/opentelemetry-exporter-gcp-trace/setup.cfg +++ b/opentelemetry-exporter-gcp-trace/setup.cfg @@ -27,7 +27,7 @@ package_dir= packages=find_namespace: install_requires = google-cloud-trace ~= 1.1 - opentelemetry-api ~= 1.0 + opentelemetry-api ~= 1.4 opentelemetry-sdk ~= 1.0 opentelemetry-resourcedetector-gcp >= 1.5.0dev0, == 1.* diff --git a/opentelemetry-exporter-gcp-trace/src/opentelemetry/exporter/cloud_trace/__init__.py b/opentelemetry-exporter-gcp-trace/src/opentelemetry/exporter/cloud_trace/__init__.py index 0d1e0ff9..dddc32a5 100644 --- a/opentelemetry-exporter-gcp-trace/src/opentelemetry/exporter/cloud_trace/__init__.py +++ b/opentelemetry-exporter-gcp-trace/src/opentelemetry/exporter/cloud_trace/__init__.py @@ -97,6 +97,7 @@ Timestamp, ) from google.rpc import code_pb2, status_pb2 +from opentelemetry.attributes import BoundedAttributes from opentelemetry.exporter.cloud_trace.environment_variables import ( OTEL_EXPORTER_GCP_TRACE_PROJECT_ID, OTEL_EXPORTER_GCP_TRACE_RESOURCE_REGEX, @@ -115,7 +116,6 @@ SpanExporter, SpanExportResult, ) -from opentelemetry.sdk.util import BoundedDict from opentelemetry.trace import format_span_id, format_trace_id from opentelemetry.trace.status import StatusCode from opentelemetry.util import types @@ -476,9 +476,9 @@ def _extract_attributes( add_agent_attr: bool = False, ) -> trace_types.Span.Attributes: """Convert span.attributes to dict.""" - attributes_dict: BoundedDict[ + attributes_dict: BoundedAttributes[ str, trace_types.AttributeValue - ] = BoundedDict(num_attrs_limit) + ] = BoundedAttributes(num_attrs_limit, immutable=False) invalid_value_dropped_count = 0 for ot_key, ot_value in attrs.items() if attrs else []: key = _truncate_str(ot_key, MAX_ATTR_KEY_BYTES)[0]