Elasticsearch: Fix consistent label order in alerting (#62497)

elasticsearch: backend: sort label-values
This commit is contained in:
Gábor Farkas
2023-02-02 09:03:18 +01:00
committed by GitHub
parent ccfa9a4ef0
commit d9fd807375
2 changed files with 110 additions and 1 deletions

View File

@@ -534,6 +534,24 @@ func trimDatapoints(queryResult backend.DataResponse, target *Query) {
}
}
// we sort the label's pairs by the label-key,
// and return the label-values
func getSortedLabelValues(labels data.Labels) []string {
var keys []string
for key := range labels {
keys = append(keys, key)
}
sort.Strings(keys)
var values []string
for _, key := range keys {
values = append(values, labels[key])
}
return values
}
func nameFields(queryResult backend.DataResponse, target *Query) {
set := make(map[string]struct{})
frames := queryResult.Frames
@@ -645,7 +663,7 @@ func getFieldName(dataField data.Field, target *Query, metricTypeCount int) stri
}
name := ""
for _, v := range dataField.Labels {
for _, v := range getSortedLabelValues(dataField.Labels) {
name += v + " "
}