Skip to content

Commit a538775

Browse files
authored
Revert "Bump OTel Dependency Versions to 1.33.0/0.54b0" (#397)
Reverts #388 ## Why? Bumping the OTel dependency versions is currently causing our main build due to spans not being generated correctly. For example in an SNS call, we see that `aws.local.service` is not being populated correctly: ``` { "name": "testTopic send", "context": { "trace_id": "0x684c92d9eecb9548c12f90342875a8f3", "span_id": "0xfd714402fb0429f9", "trace_state": "[]" }, "kind": "SpanKind.PRODUCER", "parent_id": "0xa6868c3dde9d4839", "start_time": "2025-06-13T21:06:33.612183Z", "end_time": "2025-06-13T21:06:33.920669Z", "status": { "status_code": "UNSET" }, "attributes": { "rpc.system": "aws-api", "rpc.service": "SNS", "rpc.method": "Publish", "aws.region": "us-west-2", "server.address": "sns.us-west-2.amazonaws.com", "server.port": 443, "messaging.system": "aws.sns", "messaging.destination_kind": "topic", "messaging.destination": "arn:aws:sns:us-west-2:792479605405:testTopic", "messaging.destination.name": "arn:aws:sns:us-west-2:792479605405:testTopic", "aws.sns.topic.arn": "arn:aws:sns:us-west-2:792479605405:testTopic", "aws.request_id": "8184c44e-c6db-5998-a9d2-a48853c2dd94", "retry_attempts": 0, "http.status_code": 200 }, "events": [], "links": [], "resource": { "attributes": { "telemetry.sdk.language": "python", "telemetry.sdk.name": "opentelemetry", "telemetry.sdk.version": "1.33.0", "service.name": "unknown_service", "cloud.provider": "aws", "cloud.platform": "aws_ec2", "cloud.account.id": "445567081046", "cloud.region": "us-east-1", "cloud.availability_zone": "us-east-1b", "host.id": "i-09dfcf17712adbde4", "host.type": "c5a.12xlarge", "host.name": "ip-172-31-43-64.ec2.internal", "telemetry.auto.version": "0.9.0.dev0-aws", "aws.local.service": "UnknownService" }, "schema_url": "" } } { "name": "GET /server_request", "context": { "trace_id": "0x684c92d9eecb9548c12f90342875a8f3", "span_id": "0xa6868c3dde9d4839", "trace_state": "[]" }, "kind": "SpanKind.SERVER", "parent_id": null, "start_time": "2025-06-13T21:06:33.610724Z", "end_time": "2025-06-13T21:06:33.920935Z", "status": { "status_code": "UNSET" }, "attributes": { "http.method": "GET", "http.server_name": "127.0.0.1", "http.scheme": "http", "net.host.name": "localhost:8082", "http.host": "localhost:8082", "net.host.port": 8082, "http.target": "/server_request?param=.%2Fsample-applications%2Fsimple-client-server%2Fclient.py", "net.peer.ip": "127.0.0.1", "net.peer.port": 34778, "http.user_agent": "python-requests/2.32.2", "http.flavor": "1.1", "http.route": "/server_request", "http.status_code": 200 }, "events": [], "links": [], "resource": { "attributes": { "telemetry.sdk.language": "python", "telemetry.sdk.name": "opentelemetry", "telemetry.sdk.version": "1.33.0", "service.name": "unknown_service", "cloud.provider": "aws", "cloud.platform": "aws_ec2", "cloud.account.id": "445567081046", "cloud.region": "us-east-1", "cloud.availability_zone": "us-east-1b", "host.id": "i-09dfcf17712adbde4", "host.type": "c5a.12xlarge", "host.name": "ip-172-31-43-64.ec2.internal", "telemetry.auto.version": "0.9.0.dev0-aws", "aws.local.service": "UnknownService" }, "schema_url": "" } } ``` Previously these contract tests were passing in the PR build as well as locally with these dependency version bumps so we are not sure why they are failing all of a sudden. As a short-term mitigation, we will revert these changes as we investigate further.
1 parent e997cf8 commit a538775

File tree

4 files changed

+64
-71
lines changed

4 files changed

+64
-71
lines changed

aws-opentelemetry-distro/pyproject.toml

Lines changed: 53 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -24,61 +24,61 @@ classifiers = [
2424
]
2525

2626
dependencies = [
27-
"opentelemetry-api == 1.33.0",
28-
"opentelemetry-sdk == 1.33.0",
29-
"opentelemetry-exporter-otlp-proto-grpc == 1.33.0",
30-
"opentelemetry-exporter-otlp-proto-http == 1.33.0",
31-
"opentelemetry-propagator-b3 == 1.33.0",
32-
"opentelemetry-propagator-jaeger == 1.33.0",
33-
"opentelemetry-exporter-otlp-proto-common == 1.33.0",
27+
"opentelemetry-api == 1.27.0",
28+
"opentelemetry-sdk == 1.27.0",
29+
"opentelemetry-exporter-otlp-proto-grpc == 1.27.0",
30+
"opentelemetry-exporter-otlp-proto-http == 1.27.0",
31+
"opentelemetry-propagator-b3 == 1.27.0",
32+
"opentelemetry-propagator-jaeger == 1.27.0",
33+
"opentelemetry-exporter-otlp-proto-common == 1.27.0",
3434
"opentelemetry-sdk-extension-aws == 2.0.2",
3535
"opentelemetry-propagator-aws-xray == 1.0.1",
36-
"opentelemetry-distro == 0.54b0",
37-
"opentelemetry-propagator-ot-trace == 0.54b0",
38-
"opentelemetry-instrumentation == 0.54b0",
39-
"opentelemetry-instrumentation-aws-lambda == 0.54b0",
40-
"opentelemetry-instrumentation-aio-pika == 0.54b0",
41-
"opentelemetry-instrumentation-aiohttp-client == 0.54b0",
42-
"opentelemetry-instrumentation-aiopg == 0.54b0",
43-
"opentelemetry-instrumentation-asgi == 0.54b0",
44-
"opentelemetry-instrumentation-asyncpg == 0.54b0",
45-
"opentelemetry-instrumentation-boto == 0.54b0",
46-
"opentelemetry-instrumentation-boto3sqs == 0.54b0",
47-
"opentelemetry-instrumentation-botocore == 0.54b0",
48-
"opentelemetry-instrumentation-celery == 0.54b0",
49-
"opentelemetry-instrumentation-confluent-kafka == 0.54b0",
50-
"opentelemetry-instrumentation-dbapi == 0.54b0",
51-
"opentelemetry-instrumentation-django == 0.54b0",
52-
"opentelemetry-instrumentation-elasticsearch == 0.54b0",
53-
"opentelemetry-instrumentation-falcon == 0.54b0",
54-
"opentelemetry-instrumentation-fastapi == 0.54b0",
55-
"opentelemetry-instrumentation-flask == 0.54b0",
56-
"opentelemetry-instrumentation-grpc == 0.54b0",
57-
"opentelemetry-instrumentation-httpx == 0.54b0",
58-
"opentelemetry-instrumentation-jinja2 == 0.54b0",
59-
"opentelemetry-instrumentation-kafka-python == 0.54b0",
60-
"opentelemetry-instrumentation-logging == 0.54b0",
61-
"opentelemetry-instrumentation-mysql == 0.54b0",
62-
"opentelemetry-instrumentation-mysqlclient == 0.54b0",
63-
"opentelemetry-instrumentation-pika == 0.54b0",
64-
"opentelemetry-instrumentation-psycopg2 == 0.54b0",
65-
"opentelemetry-instrumentation-pymemcache == 0.54b0",
66-
"opentelemetry-instrumentation-pymongo == 0.54b0",
67-
"opentelemetry-instrumentation-pymysql == 0.54b0",
68-
"opentelemetry-instrumentation-pyramid == 0.54b0",
69-
"opentelemetry-instrumentation-redis == 0.54b0",
70-
"opentelemetry-instrumentation-remoulade == 0.54b0",
71-
"opentelemetry-instrumentation-requests == 0.54b0",
72-
"opentelemetry-instrumentation-sqlalchemy == 0.54b0",
73-
"opentelemetry-instrumentation-sqlite3 == 0.54b0",
74-
"opentelemetry-instrumentation-starlette == 0.54b0",
75-
"opentelemetry-instrumentation-system-metrics == 0.54b0",
76-
"opentelemetry-instrumentation-tornado == 0.54b0",
77-
"opentelemetry-instrumentation-tortoiseorm == 0.54b0",
78-
"opentelemetry-instrumentation-urllib == 0.54b0",
79-
"opentelemetry-instrumentation-urllib3 == 0.54b0",
80-
"opentelemetry-instrumentation-wsgi == 0.54b0",
81-
"opentelemetry-instrumentation-cassandra == 0.54b0",
36+
"opentelemetry-distro == 0.48b0",
37+
"opentelemetry-propagator-ot-trace == 0.48b0",
38+
"opentelemetry-instrumentation == 0.48b0",
39+
"opentelemetry-instrumentation-aws-lambda == 0.48b0",
40+
"opentelemetry-instrumentation-aio-pika == 0.48b0",
41+
"opentelemetry-instrumentation-aiohttp-client == 0.48b0",
42+
"opentelemetry-instrumentation-aiopg == 0.48b0",
43+
"opentelemetry-instrumentation-asgi == 0.48b0",
44+
"opentelemetry-instrumentation-asyncpg == 0.48b0",
45+
"opentelemetry-instrumentation-boto == 0.48b0",
46+
"opentelemetry-instrumentation-boto3sqs == 0.48b0",
47+
"opentelemetry-instrumentation-botocore == 0.48b0",
48+
"opentelemetry-instrumentation-celery == 0.48b0",
49+
"opentelemetry-instrumentation-confluent-kafka == 0.48b0",
50+
"opentelemetry-instrumentation-dbapi == 0.48b0",
51+
"opentelemetry-instrumentation-django == 0.48b0",
52+
"opentelemetry-instrumentation-elasticsearch == 0.48b0",
53+
"opentelemetry-instrumentation-falcon == 0.48b0",
54+
"opentelemetry-instrumentation-fastapi == 0.48b0",
55+
"opentelemetry-instrumentation-flask == 0.48b0",
56+
"opentelemetry-instrumentation-grpc == 0.48b0",
57+
"opentelemetry-instrumentation-httpx == 0.48b0",
58+
"opentelemetry-instrumentation-jinja2 == 0.48b0",
59+
"opentelemetry-instrumentation-kafka-python == 0.48b0",
60+
"opentelemetry-instrumentation-logging == 0.48b0",
61+
"opentelemetry-instrumentation-mysql == 0.48b0",
62+
"opentelemetry-instrumentation-mysqlclient == 0.48b0",
63+
"opentelemetry-instrumentation-pika == 0.48b0",
64+
"opentelemetry-instrumentation-psycopg2 == 0.48b0",
65+
"opentelemetry-instrumentation-pymemcache == 0.48b0",
66+
"opentelemetry-instrumentation-pymongo == 0.48b0",
67+
"opentelemetry-instrumentation-pymysql == 0.48b0",
68+
"opentelemetry-instrumentation-pyramid == 0.48b0",
69+
"opentelemetry-instrumentation-redis == 0.48b0",
70+
"opentelemetry-instrumentation-remoulade == 0.48b0",
71+
"opentelemetry-instrumentation-requests == 0.48b0",
72+
"opentelemetry-instrumentation-sqlalchemy == 0.48b0",
73+
"opentelemetry-instrumentation-sqlite3 == 0.48b0",
74+
"opentelemetry-instrumentation-starlette == 0.48b0",
75+
"opentelemetry-instrumentation-system-metrics == 0.48b0",
76+
"opentelemetry-instrumentation-tornado == 0.48b0",
77+
"opentelemetry-instrumentation-tortoiseorm == 0.48b0",
78+
"opentelemetry-instrumentation-urllib == 0.48b0",
79+
"opentelemetry-instrumentation-urllib3 == 0.48b0",
80+
"opentelemetry-instrumentation-wsgi == 0.48b0",
81+
"opentelemetry-instrumentation-cassandra == 0.48b0",
8282
]
8383

8484
[project.optional-dependencies]

aws-opentelemetry-distro/src/amazon/opentelemetry/distro/patches/_bedrock_patches.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@
3131
_AttributeMapT,
3232
_AwsSdkCallContext,
3333
_AwsSdkExtension,
34-
_BotocoreInstrumentorContext,
3534
_BotoResultT,
3635
)
3736
from opentelemetry.trace.span import Span
@@ -193,7 +192,7 @@ def extract_attributes(self, attributes: _AttributeMapT):
193192
if request_param_value:
194193
attributes[attribute_key] = request_param_value
195194

196-
def on_success(self, span: Span, result: _BotoResultT, instrumentor_context: _BotocoreInstrumentorContext):
195+
def on_success(self, span: Span, result: _BotoResultT):
197196
if self._operation_class is None:
198197
return
199198

@@ -230,7 +229,7 @@ class _BedrockExtension(_AwsSdkExtension):
230229
"""
231230

232231
# pylint: disable=no-self-use
233-
def on_success(self, span: Span, result: _BotoResultT, instrumentor_context: _BotocoreInstrumentorContext):
232+
def on_success(self, span: Span, result: _BotoResultT):
234233
# _GUARDRAIL_ID can only be retrieved from the response, not from the request
235234
guardrail_id = result.get(_GUARDRAIL_ID)
236235
if guardrail_id:
@@ -334,7 +333,7 @@ def _set_if_not_none(attributes, key, value):
334333
attributes[key] = value
335334

336335
# pylint: disable=too-many-branches
337-
def on_success(self, span: Span, result: Dict[str, Any], instrumentor_context: _BotocoreInstrumentorContext):
336+
def on_success(self, span: Span, result: Dict[str, Any]):
338337
model_id = self._call_context.params.get(_MODEL_ID)
339338

340339
if not model_id:

aws-opentelemetry-distro/src/amazon/opentelemetry/distro/patches/_botocore_patches.py

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,7 @@
2525
from opentelemetry.instrumentation.botocore.extensions.lmbd import _LambdaExtension
2626
from opentelemetry.instrumentation.botocore.extensions.sns import _SnsExtension
2727
from opentelemetry.instrumentation.botocore.extensions.sqs import _SqsExtension
28-
from opentelemetry.instrumentation.botocore.extensions.types import (
29-
_AttributeMapT,
30-
_AwsSdkExtension,
31-
_BotocoreInstrumentorContext,
32-
_BotoResultT,
33-
)
28+
from opentelemetry.instrumentation.botocore.extensions.types import _AttributeMapT, _AwsSdkExtension, _BotoResultT
3429
from opentelemetry.semconv.trace import SpanAttributes
3530
from opentelemetry.trace.span import Span
3631

@@ -80,8 +75,8 @@ def patch_extract_attributes(self, attributes: _AttributeMapT):
8075

8176
old_on_success = _LambdaExtension.on_success
8277

83-
def patch_on_success(self, span: Span, result: _BotoResultT, instrumentor_context: _BotocoreInstrumentorContext):
84-
old_on_success(self, span, result, instrumentor_context)
78+
def patch_on_success(self, span: Span, result: _BotoResultT):
79+
old_on_success(self, span, result)
8580
lambda_configuration = result.get("Configuration", {})
8681
function_arn = lambda_configuration.get("FunctionArn")
8782
if function_arn:
@@ -185,8 +180,8 @@ def patch_extract_attributes(self, attributes: _AttributeMapT):
185180

186181
old_on_success = _SqsExtension.on_success
187182

188-
def patch_on_success(self, span: Span, result: _BotoResultT, instrumentor_context: _BotocoreInstrumentorContext):
189-
old_on_success(self, span, result, instrumentor_context)
183+
def patch_on_success(self, span: Span, result: _BotoResultT):
184+
old_on_success(self, span, result)
190185
queue_url = result.get("QueueUrl")
191186
if queue_url:
192187
span.set_attribute(AWS_SQS_QUEUE_URL, queue_url)
@@ -248,7 +243,7 @@ def extract_attributes(self, attributes: _AttributeMapT):
248243
attributes[AWS_SECRETSMANAGER_SECRET_ARN] = secret_id
249244

250245
# pylint: disable=no-self-use
251-
def on_success(self, span: Span, result: _BotoResultT, instrumentor_context: _BotocoreInstrumentorContext):
246+
def on_success(self, span: Span, result: _BotoResultT):
252247
secret_arn = result.get("ARN")
253248
if secret_arn:
254249
span.set_attribute(AWS_SECRETSMANAGER_SECRET_ARN, secret_arn)

aws-opentelemetry-distro/tests/amazon/opentelemetry/distro/test_instrumentation_patch.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ def _test_unpatched_botocore_instrumentation(self):
147147
)
148148

149149
# BedrockRuntime
150-
self.assertTrue("bedrock-runtime" in _KNOWN_EXTENSIONS, "Upstream has added a bedrock-runtime extension")
150+
self.assertFalse("bedrock-runtime" in _KNOWN_EXTENSIONS, "Upstream has added a bedrock-runtime extension")
151151

152152
# SecretsManager
153153
self.assertFalse("secretsmanager" in _KNOWN_EXTENSIONS, "Upstream has added a SecretsManager extension")
@@ -678,7 +678,6 @@ def _do_on_success(
678678
) -> Dict[str, str]:
679679
span_mock: Span = MagicMock()
680680
mock_call_context = MagicMock()
681-
mock_instrumentor_context = MagicMock()
682681
span_attributes: Dict[str, str] = {}
683682

684683
def set_side_effect(set_key, set_value):
@@ -693,6 +692,6 @@ def set_side_effect(set_key, set_value):
693692
mock_call_context.params = params
694693

695694
extension = _KNOWN_EXTENSIONS[service_name]()(mock_call_context)
696-
extension.on_success(span_mock, result, mock_instrumentor_context)
695+
extension.on_success(span_mock, result)
697696

698697
return span_attributes

0 commit comments

Comments
 (0)