We use Datadog for tracing most of our application today. They happen to have good coverage for our libraries here: dd-trace-go/contrib at v1 · DataDog/dd-trace-go · GitHub
But while they say they are OpenTracing compatible, they aren’t in actuality. Datadog spans aren’t linkable to opentracing spans and vice versa. This significantly reduces the benefit of tracing for us. I did leave a comment here to confirm/clarify: question: opentracing.SpanFromContext(request.Context()) returns nil inside a datadog span · Issue #813 · DataDog/dd-trace-go · GitHub
One possible alternative is to use the ContextPropagator to propagate the span context separately from the opentracing one, but I do not know how/where to create the spans. I also don’t see a place to finish the spans.
Maybe workflow interceptors? But there’s no activity interceptor for golang yet.
Any thoughts on the “easiest” way to proceed?