From 48fef55a1bc52cf6d8f7dc52ef2e1b1aa68b96c2 Mon Sep 17 00:00:00 2001 From: "Bo-Yi.Wu" Date: Sun, 18 Sep 2022 12:51:02 +0800 Subject: [PATCH] docs(otel): add trace ID and span ID sample Signed-off-by: Bo-Yi.Wu --- README.md | 13 ++++++++----- _example/example02/main.go | 14 +++++++++----- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 7709f32..2d10990 100644 --- a/README.md +++ b/README.md @@ -98,9 +98,15 @@ func main() { TimeFormat: time.RFC3339, Context: ginzap.Fn(func(c *gin.Context) []zapcore.Field { fields := []zapcore.Field{} - // log response ID + // log request ID if requestID := c.Writer.Header().Get("X-Request-Id"); requestID != "" { - fields = append(fields, zap.String("request-id", requestID)) + fields = append(fields, zap.String("request_id", requestID)) + } + + // log trace and span ID + if trace.SpanFromContext(c.Request.Context()).SpanContext().IsValid() { + fields = append(fields, zap.String("trace_id", trace.SpanFromContext(c.Request.Context()).SpanContext().TraceID().String())) + fields = append(fields, zap.String("span_id", trace.SpanFromContext(c.Request.Context()).SpanContext().SpanID().String())) } // log request body @@ -111,9 +117,6 @@ func main() { c.Request.Body = io.NopCloser(&buf) fields = append(fields, zap.String("body", string(body))) - // support opentelemetry trace ID - fields = append(fields, zap.String("traceID", trace.SpanFromContext(c.Request.Context()).SpanContext().TraceID().String())) - return fields }), })) diff --git a/_example/example02/main.go b/_example/example02/main.go index 4a40aa3..0d589b4 100644 --- a/_example/example02/main.go +++ b/_example/example02/main.go @@ -7,6 +7,7 @@ import ( "time" ginzap "github.com/gin-contrib/zap" + "github.com/gin-gonic/gin" "go.opentelemetry.io/otel/trace" "go.uber.org/zap" @@ -23,9 +24,15 @@ func main() { TimeFormat: time.RFC3339, Context: ginzap.Fn(func(c *gin.Context) []zapcore.Field { fields := []zapcore.Field{} - // log response ID + // log request ID if requestID := c.Writer.Header().Get("X-Request-Id"); requestID != "" { - fields = append(fields, zap.String("request-id", requestID)) + fields = append(fields, zap.String("request_id", requestID)) + } + + // log trace and span ID + if trace.SpanFromContext(c.Request.Context()).SpanContext().IsValid() { + fields = append(fields, zap.String("trace_id", trace.SpanFromContext(c.Request.Context()).SpanContext().TraceID().String())) + fields = append(fields, zap.String("span_id", trace.SpanFromContext(c.Request.Context()).SpanContext().SpanID().String())) } // log request body @@ -36,9 +43,6 @@ func main() { c.Request.Body = io.NopCloser(&buf) fields = append(fields, zap.String("body", string(body))) - // support opentelemetry trace ID - fields = append(fields, zap.String("traceID", trace.SpanFromContext(c.Request.Context()).SpanContext().TraceID().String())) - return fields }), }))