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.

已提問 3 年前檢視次數 1392 次
4 個答案
0
已接受的答案

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
已回答 3 年前
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.

已回答 3 年前
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.

aws-lu
已回答 3 年前
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
pinglei
已回答 6 個月前

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南