OpenTelemetry propagators are used to extract and inject context data from and into messages exchanged by applications. The propagator supported by this package is the Datadog Trace Context.
Span Context | Size | DD header key | Size | Text Format | |
---|---|---|---|---|---|
TraceId | 128 bits | <--> | x-datadog-trace-id | 64 bits | number base 10 |
SpanId | 64 bits | <--> | x-datadog-parent-id | 64 bits | number base 10 |
Sampling decision | 1 bit | <--> | x-datadog-sampling-priority | bool | "0" or "1" |
You can find a getting started guide on opentelemetry.io.
go get github.com/SylvainDumas/opentelemetry-datadog-go
If you installed more packages than you intended, you can use go mod tidy
to remove any unused packages.
import (
//...
"github.com/SylvainDumas/opentelemetry-datadog-go/propagators/tracecontext"
"go.opentelemetry.io/otel"
)
func initTracerProvider() {
// ...
otel.SetTextMapPropagator(tracecontext.NewDefault())
}