Skip to content

Commit c041658

Browse files
Liudmila Molkovaarminru
andauthored
Replace AWS context propagation doc with link to semantic conventions (#4571)
This doc is also available in semantic conventions (no changes here since semconv were moved to a different repo). Removing spec copy in favor of semconv one to keep all AWS-specific instrumentation guidance in one place. --------- Co-authored-by: Armin Ruech <[email protected]>
1 parent 2bc7276 commit c041658

File tree

1 file changed

+7
-40
lines changed
  • supplementary-guidelines/compatibility

1 file changed

+7
-40
lines changed
Lines changed: 7 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,9 @@
1-
# Compatibility Considerations for AWS
2-
3-
This document highlights compatibility considerations for OpenTelemetry
4-
instrumentations when interacting with AWS managed services using an aws-sdk,
5-
a third-party library, or a direct HTTP request.
6-
7-
## Context Propagation
8-
9-
When making calls to AWS managed services using an AWS SDK, a third-party
10-
library, or a direct HTTP request, an AWS service-supported propagation format should
11-
be used to add context propagation to HTTP headers on the outgoing request in order
12-
to propagate the context to services indirectly invoked by such call.
13-
14-
Instrumentation may allow a different propagator to be explicitly configured for
15-
the instrumentation (e.g. an explicitly provided propagator, or an option to use the
16-
globally configured propagator for all or certain calls).
17-
This will be useful for certain cases where the services allow transporting these
18-
headers to a receiving side, for example SQS or SNS with message attributes.
19-
Note that this also means that instrumentations providing this option cannot just
20-
replace their call to the X-Ray propagator with a call to another propagator (as
21-
that would only send HTTP headers in the API REST call that would be immediately
22-
ignored by the receiving AWS service), but will need to introduce per-service-call
23-
implementations where it makes sense (e.g., for SQS send and SQS receive).
24-
This can allow for transporting additional context that may not be supported by X-Ray,
25-
such as baggage or tracestate, or supporting certain legacy propagation formats.
26-
Documentation should advise that doing so is subject to attribute limits and billing impacts.
1+
<!--- Hugo front matter used to generate the website version of this page:
2+
linkTitle: Compatibility considerations for AWS
3+
redirect: /docs/specs/semconv/non-normative/compatibility/aws 301!
4+
manualLinkTarget: _blank
5+
--->
276

28-
Propagation headers must be added before the signature is calculated to prevent
29-
errors on signed requests. If injecting into the request itself (not just adding
30-
additional HTTP headers), additional considerations may apply (for example, the
31-
.NET AWS SDK calculates a hash of the attributes it sends and compares it with
32-
the `MD5OfMessageAttributes` that it receives).
33-
34-
The following formats are currently natively supported by AWS services for propagation:
35-
36-
* [AWS X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html)
37-
38-
AWS service-supported context propagation is necessary to allow context propagation
39-
through AWS managed services, for example: `S3 -> SNS -> SQS -> Lambda`.
7+
# Compatibility Considerations for AWS
408

41-
(See the [aws-lambda sqs-event semantic convention](https://github.com/open-telemetry/semantic-conventions/blob/main/docs/faas/aws-lambda.md#sqs-event)
42-
doc for details on how this context propagation is consumed by Lambda instrumentation.)
9+
This page has moved to [semantic-conventions](https://github.com/open-telemetry/semantic-conventions/blob/main/docs/non-normative/compatibility/aws.md).

0 commit comments

Comments
 (0)