내용으로 건너뛰기

When is XRay going to support W3C Trace Context standard headers?

0

I was reading about the standardization efforts around distributed tracing, in particular, this document:
https://www.w3.org/TR/trace-context/

While looking at AWS XRay's implementation, it seems to be going completely custom, with custom HTTP Headers, and custom formating of the hierarchy IDs.

When is XRay going to switch to a more standardized format that is compatible with other systems that also implement that standard?

I found this project when randomly searching for this topic:
https://aws-otel.github.io/

I don't quite understand what that is and why it even coexists with XRay.

Would appreciate clarification here.

질문됨 5년 전2.1천회 조회
4개 답변
1
수락된 답변

Hi @julealgon,
You're right that X-Ray uses custom id format that is different from the w3c format. This has been in the design since X-Ray's inception for some functional reasons. Since, the custom id format is deeply embedded within the X-Ray architecture, the change to the standardized format is very non-trivial and not on the roadmap for any time soon.
That being said, X-Ray now does support traces generated by an OpenTelemetry SDKs that generate w3c format trace ids. You'll need to use the AWS Distro for OpenTelemetry Collector for sending the w3c format traces to X-Ray. More of it here: https://aws-otel.github.io/docs/getting-started/collector . There are more components available as part of AWS Distro for OpenTelemetry to let you use OpenTelemetry SDK with X-Ray service as the tracing backend. You don't need X-Ray SDKs for application in that case. You can find all the information about the AWS X-Ray OpenTelemetry support at https://aws-otel.github.io/
Hope this clears up your confusion. Also, could you give us an overview of your use case of having w3c standard ids with X-Ray?

AWS
답변함 5년 전
전문가
검토됨 일 년 전
0

Thanks for clarifying @prashataws.

It's unfortunate to hear there are no current plans to make X-Ray standards-compliant.

As for using aws-otel, as far as I understand it, it is currently not an option for us since we are using the .Net stack and that doesn't seem to be supported.

Lastly, on the use-case question, there is no use-case per se, I just wanted to make our solution as future proof as possible and as decoupled from proprietary implementations as possible. The question came to mind after I started investigating X-Ray integration in one of our projects.

답변함 5년 전
0

Hey julealgon,

Support for X-Ray for OpenTelemetry .NET is in our backlog and is currently under constructing, you may come back later to check.

답변함 5년 전
0

X-Ray now supports W3C trace id (in X-Ray's text format), the AWS X-Ray exporter in OpenTelemetry Collector will do the convert automatically when sending data to X-Ray. https://aws.amazon.com/about-aws/whats-new/2023/10/aws-x-ray-w3c-format-trace-ids-distributed-tracing/

For trace propagation and X-Ray integrated AWS services such as Lambda, you still need to use the X-Ray specific HTTP headers via the X-Ray propagator in OpenTelemetry SDK or use X-Ray SDK.

AWS
답변함 2년 전

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

관련 콘텐츠