From 9fc1de62d5c0e6220d9c34b7623e99a083fd6ba7 Mon Sep 17 00:00:00 2001 From: Andreas Christou Date: Thu, 8 Jun 2023 17:30:22 +0100 Subject: [PATCH] CloudMonitoring: Improve parsing of GCM labels (#69800) Update parsing of GCM labels - Include parsing of metadata labels --- .../cloud-monitoring/test-data/7-series-response-mql.json | 6 ++++++ pkg/tsdb/cloud-monitoring/time_series_query_test.go | 1 + pkg/tsdb/cloud-monitoring/types.go | 2 +- 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/pkg/tsdb/cloud-monitoring/test-data/7-series-response-mql.json b/pkg/tsdb/cloud-monitoring/test-data/7-series-response-mql.json index 62233e23d8d..ec9845fad09 100644 --- a/pkg/tsdb/cloud-monitoring/test-data/7-series-response-mql.json +++ b/pkg/tsdb/cloud-monitoring/test-data/7-series-response-mql.json @@ -13,6 +13,9 @@ { "key": "metric.response_code_class", "valueType": "INT64" + }, + { + "key": "metadata.app" } ], "pointDescriptors": [ @@ -37,6 +40,9 @@ }, { "int64Value": "200" + }, + { + "stringValue": "test-app" } ], "pointData": [ diff --git a/pkg/tsdb/cloud-monitoring/time_series_query_test.go b/pkg/tsdb/cloud-monitoring/time_series_query_test.go index 27d4ed79b9a..fb892e3d79a 100644 --- a/pkg/tsdb/cloud-monitoring/time_series_query_test.go +++ b/pkg/tsdb/cloud-monitoring/time_series_query_test.go @@ -110,6 +110,7 @@ func TestTimeSeriesQuery(t *testing.T) { labels, ok := custom["labels"].(gdata.Labels) require.True(t, ok) assert.Equal(t, "6724404429462225363", labels["resource.label.instance_id"]) + assert.Equal(t, "test-app", labels["metadata.label.app"]) }) t.Run("includes time interval", func(t *testing.T) { diff --git a/pkg/tsdb/cloud-monitoring/types.go b/pkg/tsdb/cloud-monitoring/types.go index d952b71da0e..ab2f32765a7 100644 --- a/pkg/tsdb/cloud-monitoring/types.go +++ b/pkg/tsdb/cloud-monitoring/types.go @@ -208,7 +208,7 @@ func (ts timeSeriesData) getLabels(labelDescriptors []LabelDescriptor) (data.Lab seriesLabels[key] = labelValue.StringValue } - if strings.Contains(key, "metric.label") || strings.Contains(key, "resource.label") { + if strings.Contains(key, "metric.label") || strings.Contains(key, "resource.label") || strings.Contains(key, "metadata.label") { defaultMetricName += seriesLabels[key] + " " } }