From 0dc900d0e2823733ac88b1feefd57864dca8e9c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Rold=C3=A1n=20Betancort?= Date: Fri, 1 Mar 2024 13:42:30 +0000 Subject: [PATCH] adds OpenTelemetry TraceID to logs so we can correlate logs, traces and metric exemplars --- pkg/cmd/server/defaults.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkg/cmd/server/defaults.go b/pkg/cmd/server/defaults.go index 3d25fda5f2..455d79ad26 100644 --- a/pkg/cmd/server/defaults.go +++ b/pkg/cmd/server/defaults.go @@ -125,6 +125,12 @@ var defaultGRPCLogOptions = []grpclog.Option{ grpclog.WithDurationField(func(duration time.Duration) grpclog.Fields { return grpclog.Fields{"grpc.time_ms", duration.Milliseconds()} }), + grpclog.WithFieldsFromContext(func(ctx context.Context) grpclog.Fields { + if span := trace.SpanContextFromContext(ctx); span.IsSampled() { + return grpclog.Fields{"traceID", span.TraceID().String()} + } + return nil + }), } const (