@@ -89,16 +89,9 @@ func (mr *monitoringReceiver) Scrape(ctx context.Context) (pmetric.Metrics, erro
89
89
metrics := pmetric .NewMetrics ()
90
90
91
91
// Iterate over each metric in the configuration to calculate start/end times and construct the filter query.
92
- for _ , metric := range mr .config .MetricsList {
93
- // Acquire read lock to safely read metricDescriptors
94
- mr .mutex .RLock ()
95
- metricDesc , exists := mr .metricDescriptors [metric .MetricName ]
96
- mr .mutex .RUnlock ()
97
- if ! exists {
98
- mr .logger .Warn ("Metric descriptor not found" , zap .String ("metric_name" , metric .MetricName ))
99
- continue
100
- }
101
-
92
+ mr .mutex .RLock ()
93
+ defer mr .mutex .RUnlock ()
94
+ for metricType , metricDesc := range mr .metricDescriptors {
102
95
// Set interval and delay times, using defaults if not provided
103
96
gInternal = mr .config .CollectionInterval
104
97
if gInternal <= 0 {
@@ -114,7 +107,7 @@ func (mr *monitoringReceiver) Scrape(ctx context.Context) (pmetric.Metrics, erro
114
107
calStartTime , calEndTime = calculateStartEndTime (gInternal , gDelay )
115
108
116
109
// Get the filter query for the metric
117
- filterQuery = getFilterQuery ( metric )
110
+ filterQuery = fmt . Sprintf ( ` metric.type = "%s"` , metricType )
118
111
119
112
// Define the request to list time series data
120
113
tsReq := & monitoringpb.ListTimeSeriesRequest {
@@ -243,8 +236,13 @@ func getFilterQuery(metric MetricConfig) string {
243
236
var filterQuery string
244
237
const baseQuery = `metric.type =`
245
238
246
- // If a specific metric name is provided, use it in the filter query
247
- filterQuery = fmt .Sprintf (`%s "%s"` , baseQuery , metric .MetricName )
239
+ if metric .MetricName != "" {
240
+ // If a specific metric name is provided, use it in the filter query
241
+ filterQuery = fmt .Sprintf (`%s "%s"` , baseQuery , metric .MetricName )
242
+ } else {
243
+ filterQuery = fmt .Sprintf (`%s monitoring.regex.full_match("%s")` , baseQuery , metric .MetricName )
244
+ }
245
+
248
246
return filterQuery
249
247
}
250
248
@@ -322,7 +320,7 @@ func (mr *monitoringReceiver) convertGCPTimeSeriesToMetrics(metrics pmetric.Metr
322
320
// TODO: Add support for EXPONENTIAL_HISTOGRAM
323
321
default :
324
322
metricError := fmt .Sprintf ("\n Unsupported metric kind: %v\n " , timeSeries .GetMetricKind ())
325
- mr .logger .Info (metricError )
323
+ mr .logger .Warn (metricError )
326
324
}
327
325
}
328
326
0 commit comments