dd-trace-go
dd-trace-go copied to clipboard
proposal: tracer: span links support
Opentelemetry has a useful feature for dealing with batch/async patterns, links between spans, that would be very useful in certain situations, e.g. in message queue subscribers to link, in the trace, the processing spans with their corresponding message fetch span (and, more in general, any time a span wants to be correlated with more than a single parent, see the link above for other use cases).
It would be ideal to have this functionality available also in the DD tracer.
+1
We are actively looking into this, but there are a lot of moving parts and other dependencies that will also need to do some work here in order to support this with the Go tracer. We will update this ticket once it's in progress.
It doesn't appear that this is even supported by the Datadog UI. I've manually implemented this using Open Telemetry and Datadog seems to completely ignore the Link information when computing time spent in service.
Interested to hear and and all progress on this. Seems like a major gap with regard tracing in EDA
Thanks for everyone's patience here! This has now been implemented in the OTel API implementation with the dd-trace-go library: https://github.com/DataDog/dd-trace-go/pull/2502
It will be available in the upcoming release of v1.61.0 😄
A dd-trace-go v2 library is currently in progress which will make it much easier to support span links as part of the native Datadog API as well, so please be on the lookout for that, and reach out to support if interested in trying out v2!
A dd-trace-go v2 library is currently in progress which will make it much easier to support span links as part of the native Datadog API as well, so please be on the lookout for that, and reach out to support if interested in trying out v2!
@katiehockman thanks Katie! Do you have a link to an issue or feature that I can follow for the native DD implementation?
@orionstudt I will actually leave this ticket open, and we can track it here! 👍