From 8fc200c0cc1e2a7262e9e65867890a9f135b2386 Mon Sep 17 00:00:00 2001 From: Klaus Post Date: Tue, 5 Dec 2023 12:16:48 -0800 Subject: [PATCH] Truncate long traces for internode communication (#18593) Prevent excessively long request traces. --- internal/grid/trace.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/internal/grid/trace.go b/internal/grid/trace.go index f608d6fa4..f1f30f2b0 100644 --- a/internal/grid/trace.go +++ b/internal/grid/trace.go @@ -129,7 +129,11 @@ func (c *muxClient) traceRoundtrip(ctx context.Context, t *tracer, h HandlerID, trace.HTTP.ReqInfo.Path = trace.Path } else if v != nil { // Print exported fields as single request to path. - trace.Path = fmt.Sprintf("%s?req=%s", trace.Path, url.QueryEscape(fmt.Sprintf("%+v", v))) + obj := fmt.Sprintf("%+v", v) + if len(obj) > 1024 { + obj = obj[:1024] + "..." + } + trace.Path = fmt.Sprintf("%s?req=%s", trace.Path, url.QueryEscape(obj)) trace.HTTP.ReqInfo.Path = trace.Path } t.Publisher.Publish(trace)