From 4abc56c583d66007c94abecfbeac76fd364422bf Mon Sep 17 00:00:00 2001 From: Kyle Brandt Date: Fri, 5 May 2023 09:07:39 -0400 Subject: [PATCH] =?UTF-8?q?Prometheus:=20(Chore/Instrumentation)=20add=20t?= =?UTF-8?q?race=20spans=20for=20result=20proces=E2=80=A6=20(#67858)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Prometheus: (Chore/Instrumentation) add trace spans for result processing --- pkg/tsdb/prometheus/querydata/response.go | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/pkg/tsdb/prometheus/querydata/response.go b/pkg/tsdb/prometheus/querydata/response.go index 4c4b2ff026a..713a0c149fe 100644 --- a/pkg/tsdb/prometheus/querydata/response.go +++ b/pkg/tsdb/prometheus/querydata/response.go @@ -14,6 +14,7 @@ import ( "github.com/grafana/grafana/pkg/tsdb/prometheus/models" "github.com/grafana/grafana/pkg/tsdb/prometheus/querydata/exemplar" + "github.com/grafana/grafana/pkg/tsdb/prometheus/utils" "github.com/grafana/grafana/pkg/util/converter" ) @@ -24,6 +25,9 @@ func (s *QueryData) parseResponse(ctx context.Context, q *models.Query, res *htt } }() + ctx, endSpan := utils.StartTrace(ctx, s.tracer, "datasource.prometheus.parseResponse", []utils.Attribute{}) + defer endSpan() + iter := jsoniter.Parse(jsoniter.ConfigDefault, res.Body, 1024) r := converter.ReadPrometheusStyleResult(iter, converter.Options{ MatrixWideSeries: s.enableWideSeries, @@ -46,13 +50,15 @@ func (s *QueryData) parseResponse(ctx context.Context, q *models.Query, res *htt } if r.Error == nil { - r = s.processExemplars(q, r) + r = s.processExemplars(ctx, q, r) } return r } -func (s *QueryData) processExemplars(q *models.Query, dr backend.DataResponse) backend.DataResponse { +func (s *QueryData) processExemplars(ctx context.Context, q *models.Query, dr backend.DataResponse) backend.DataResponse { + _, endSpan := utils.StartTrace(ctx, s.tracer, "datasource.prometheus.processExemplars", []utils.Attribute{}) + defer endSpan() sampler := s.exemplarSampler() labelTracker := exemplar.NewLabelTracker()