From 3d856dcb33733fb520c290ffcedb8a7a107514e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nathan=20V=C4=93rzemnieks?= Date: Fri, 6 Dec 2024 15:02:06 +0100 Subject: [PATCH] fix: mark bucketAgg parse errors as downstream (#97478) --- pkg/tsdb/elasticsearch/parse_query.go | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pkg/tsdb/elasticsearch/parse_query.go b/pkg/tsdb/elasticsearch/parse_query.go index 333ca3db660..27b9bc9b2e8 100644 --- a/pkg/tsdb/elasticsearch/parse_query.go +++ b/pkg/tsdb/elasticsearch/parse_query.go @@ -1,6 +1,8 @@ package elasticsearch import ( + "fmt" + "github.com/grafana/grafana-plugin-sdk-go/backend" "github.com/grafana/grafana-plugin-sdk-go/backend/log" @@ -22,7 +24,7 @@ func parseQuery(tsdbQuery []backend.DataQuery, logger log.Logger) ([]*Query, err bucketAggs, err := parseBucketAggs(model) if err != nil { logger.Error("Failed to parse bucket aggs in query", "error", err, "model", string(q.JSON)) - return nil, err + return nil, backend.DownstreamError(err) } metrics, err := parseMetrics(model) if err != nil { @@ -59,12 +61,12 @@ func parseBucketAggs(model *simplejson.Json) ([]*BucketAgg, error) { agg.Type, err = aggJSON.Get("type").String() if err != nil { - return nil, err + return nil, fmt.Errorf("failed to parse bucket aggs type: %w", err) } agg.ID, err = aggJSON.Get("id").String() if err != nil { - return nil, err + return nil, fmt.Errorf("failed to parse bucket aggs id: %w", err) } agg.Field = aggJSON.Get("field").MustString()