aboutsummaryrefslogtreecommitdiffhomepage
path: root/modules/caddyhttp/tracing/tracer.go
diff options
context:
space:
mode:
authorYifan Yang <[email protected]>2024-10-22 01:06:55 +0800
committerGitHub <[email protected]>2024-10-21 11:06:55 -0600
commit669fc41e6321115df554d5f7d8eb55fdfbdaab18 (patch)
tree91c6e1cd7890870c30629a96a4cfa9297c094866 /modules/caddyhttp/tracing/tracer.go
parent0182fb87fa7276463086c2360431a1c0dc797edf (diff)
downloadcaddy-669fc41e6321115df554d5f7d8eb55fdfbdaab18.tar.gz
caddy-669fc41e6321115df554d5f7d8eb55fdfbdaab18.zip
tracing: Add `spanID` field to access logs and `http.vars.span_id` placeholder (#6646)
* logging: Add spanID field to access logs when tracing is enabled Signed-off-by: YifanYang6 <[email protected]> * tracing: add `http.vars.span_id` placeholder when tracing is enabled Signed-off-by: YifanYang6 <[email protected]> --------- Signed-off-by: YifanYang6 <[email protected]>
Diffstat (limited to 'modules/caddyhttp/tracing/tracer.go')
-rw-r--r--modules/caddyhttp/tracing/tracer.go6
1 files changed, 5 insertions, 1 deletions
diff --git a/modules/caddyhttp/tracing/tracer.go b/modules/caddyhttp/tracing/tracer.go
index 89c617bf4..261952aa6 100644
--- a/modules/caddyhttp/tracing/tracer.go
+++ b/modules/caddyhttp/tracing/tracer.go
@@ -88,11 +88,15 @@ func (ot *openTelemetryWrapper) serveHTTP(w http.ResponseWriter, r *http.Request
spanCtx := trace.SpanContextFromContext(ctx)
if spanCtx.IsValid() {
traceID := spanCtx.TraceID().String()
+ spanID := spanCtx.SpanID().String()
// Add a trace_id placeholder, accessible via `{http.vars.trace_id}`.
caddyhttp.SetVar(ctx, "trace_id", traceID)
- // Add the trace id to the log fields for the request.
+ // Add a span_id placeholder, accessible via `{http.vars.span_id}`.
+ caddyhttp.SetVar(ctx, "span_id", spanID)
+ // Add the traceID and spanID to the log fields for the request.
if extra, ok := ctx.Value(caddyhttp.ExtraLogFieldsCtxKey).(*caddyhttp.ExtraLogFields); ok {
extra.Add(zap.String("traceID", traceID))
+ extra.Add(zap.String("spanID", spanID))
}
}
next := ctx.Value(nextCallCtxKey).(*nextCall)