Migrate AWS SQS messaging telemetry to v1.43 preview#19269
Draft
trask wants to merge 4 commits into
Draft
Conversation
Pull request dashboard statusStatus last refreshed: 2026-07-22 18:44:35 UTC.
This automated status or its linked feedback items may be incorrect. If something looks wrong, please report it with the result you expected. |
trask
force-pushed
the
messaging-v1-43-aws
branch
from
July 19, 2026 05:04
1f553a8 to
cd8cc03
Compare
This was referenced Jul 19, 2026
trask
force-pushed
the
messaging-v1-43-aws
branch
from
July 19, 2026 20:35
cd8cc03 to
5a1e203
Compare
Contributor
There was a problem hiding this comment.
Pull request overview
Migrates AWS SDK 1.11/2.2 SQS and Spring Cloud AWS telemetry to the v1.43 messaging preview.
Changes:
- Adds stable receive links and process-parent selection.
- Refactors message/list wrappers to retain creation and parent contexts.
- Adds preview-specific regression tests for links and abandoned iterators.
Reviewed changes
Copilot reviewed 55 out of 55 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
aws-sdk-1.11/library/build.gradle.kts |
Adds preview test task. |
aws-sdk-1.11/.../AwsSdkInstrumenterFactory.java |
Migrates SQS instrumenters. |
aws-sdk-1.11/.../SqsImpl.java |
Selects process parent context. |
aws-sdk-1.11/.../SqsMessage.java |
Exposes creation context. |
aws-sdk-1.11/.../SqsMessageImpl.java |
Extracts X-Ray creation context. |
aws-sdk-1.11/.../SqsParentContext.java |
Preserves parent context values. |
aws-sdk-1.11/.../TracingIterator.java |
Uses list-held tracing state. |
aws-sdk-1.11/.../TracingList.java |
Stores process parent context. |
aws-sdk-1.11/.../SqsParentContextTest.java |
Tests context preservation. |
aws-sdk-1.11/.../AbstractSqsSuppressReceiveSpansTest.java |
Tests abandoned iterators. |
aws-sdk-1.11/.../AbstractSqsTracingTest.java |
Tests receive links. |
aws-sdk-2.2/library/build.gradle.kts |
Adds preview test task. |
aws-sdk-2.2/.../AwsSdkTelemetry.java |
Updates factory construction. |
aws-sdk-2.2/.../AwsSdkInstrumenterFactory.java |
Migrates SQS instrumenters. |
aws-sdk-2.2/.../SqsImpl.java |
Propagates process parent state. |
aws-sdk-2.2/.../SqsMessage.java |
Exposes creation context. |
aws-sdk-2.2/.../SqsMessageImpl.java |
Retains extraction configuration. |
aws-sdk-2.2/.../SqsParentContext.java |
Preserves context during extraction. |
aws-sdk-2.2/.../TracingIterator.java |
Uses list-held tracing state. |
aws-sdk-2.2/.../TracingList.java |
Stores process parent and config. |
aws-sdk-2.2/.../SqsParentContextTest.java |
Tests context preservation. |
aws-sdk-2.2/.../AbstractAws2SqsSuppressReceiveSpansTest.java |
Tests abandoned iterators. |
aws-sdk-2.2/.../AbstractAws2SqsTracingTest.java |
Tests receive links. |
spring-cloud-aws-3.0/.../SpringAwsUtil.java |
Adapts Spring processing contexts. |
trask
force-pushed
the
messaging-v1-43-aws
branch
from
July 20, 2026 15:27
b4c5712 to
311c461
Compare
trask
force-pushed
the
messaging-v1-43-aws
branch
from
July 20, 2026 15:58
9d06356 to
e73ee69
Compare
Contributor
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 61 out of 61 changed files in this pull request and generated 2 comments.
Comments suppressed due to low confidence (1)
instrumentation/aws-sdk/aws-sdk-1.11/library/src/main/java/io/opentelemetry/instrumentation/awssdk/v1_11/internal/AwsSdkInstrumenterFactory.java:161
- [General] In preview mode this link is added before the context customizer runs. With no ambient span, the customizer then promotes this same creation context to the process span's parent, so the span gets a redundant parent-equal link; with an ambient parent equal to the producer, the same duplication occurs. The shared topology avoids this by requiring a valid, distinct original parent before adding the producer link (
MessagingProcessInstrumenterFactory.java:33-40). Apply that check here and update the preview expectations accordingly.
SpanContext spanContext =
Span.fromContext(request.getMessage().getCreationContext()).getSpanContext();
if (spanContext.isValid()) {
spanLinks.addLink(spanContext);
}
trask
force-pushed
the
messaging-v1-43-aws
branch
from
July 21, 2026 06:44
439afe1 to
7bc0369
Compare
trask
force-pushed
the
messaging-v1-43-aws
branch
from
July 21, 2026 06:57
7bc0369 to
3f52292
Compare
trask
force-pushed
the
messaging-v1-43-aws
branch
from
July 21, 2026 07:02
3f52292 to
23357e9
Compare
trask
force-pushed
the
messaging-v1-43-aws
branch
from
July 21, 2026 12:10
23357e9 to
cbeb9d2
Compare
trask
force-pushed
the
messaging-v1-43-aws
branch
from
July 21, 2026 13:09
cbeb9d2 to
6f4ff79
Compare
trask
force-pushed
the
messaging-v1-43-aws
branch
from
July 21, 2026 17:42
6f4ff79 to
a1a6f55
Compare
trask
force-pushed
the
messaging-v1-43-aws
branch
from
July 22, 2026 18:28
a1a6f55 to
677a8eb
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Depends on #19268.
Dependency baseline:
9b5ec57607668f417ce57a15c2281897fcb3f774.Review only:
9b5ec57607668f417ce57a15c2281897fcb3f774..677a8eb7467c1edaaf79cfa72dae9805e54ad695.Exactly one AWS commit with typed SQS telemetry, stable batch counts, valid receive links, and distinct-parent process links. AWS 1.11 batch routing preserves default telemetry and both SDK preview suites cover ambient-parent topology. AWS SDK 2.x X-Ray fallback now checks for a valid extracted span rather than context identity and applies fallback to the configured propagator's extracted context, preserving baggage and other non-span fields.
Validated: full AWS SDK 2.2 library check, focused baggage-only X-Ray fallback coverage, both SDK preview suites, shared testing Spotless, and the AWS 1.11 default batch regression.