feat: unified tracing between coderd<->provisionerd (#7370)

This commit is contained in:
Colin Adler
2023-05-03 18:02:35 -05:00
committed by GitHub
parent 3368b8b65f
commit 8bd9f9c351
28 changed files with 592 additions and 331 deletions

View File

@ -5,6 +5,8 @@ import (
"runtime"
"strings"
"go.opentelemetry.io/otel"
"go.opentelemetry.io/otel/propagation"
"go.opentelemetry.io/otel/trace"
)
@ -41,3 +43,13 @@ func RunWithoutSpan(ctx context.Context, fn func(ctx context.Context)) {
ctx = trace.ContextWithSpan(ctx, NoopSpan)
fn(ctx)
}
func MetadataFromContext(ctx context.Context) map[string]string {
metadata := make(map[string]string)
otel.GetTextMapPropagator().Inject(ctx, propagation.MapCarrier(metadata))
return metadata
}
func MetadataToContext(ctx context.Context, metadata map[string]string) context.Context {
return otel.GetTextMapPropagator().Extract(ctx, propagation.MapCarrier(metadata))
}