fix: mark bucketAgg parse errors as downstream (#97478)
This commit is contained in:
@@ -1,6 +1,8 @@
|
|||||||
package elasticsearch
|
package elasticsearch
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"fmt"
|
||||||
|
|
||||||
"github.com/grafana/grafana-plugin-sdk-go/backend"
|
"github.com/grafana/grafana-plugin-sdk-go/backend"
|
||||||
"github.com/grafana/grafana-plugin-sdk-go/backend/log"
|
"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)
|
bucketAggs, err := parseBucketAggs(model)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("Failed to parse bucket aggs in query", "error", err, "model", string(q.JSON))
|
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)
|
metrics, err := parseMetrics(model)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -59,12 +61,12 @@ func parseBucketAggs(model *simplejson.Json) ([]*BucketAgg, error) {
|
|||||||
|
|
||||||
agg.Type, err = aggJSON.Get("type").String()
|
agg.Type, err = aggJSON.Get("type").String()
|
||||||
if err != nil {
|
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()
|
agg.ID, err = aggJSON.Get("id").String()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, fmt.Errorf("failed to parse bucket aggs id: %w", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
agg.Field = aggJSON.Get("field").MustString()
|
agg.Field = aggJSON.Get("field").MustString()
|
||||||
|
|||||||
Reference in New Issue
Block a user