Skip to content

Commit 1385bb3

Browse files
committed
improved filter function
Signed-off-by: Zen <[email protected]>
1 parent 0dd9c28 commit 1385bb3

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

src/prometheus_exporter/exporter.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,12 +80,17 @@ def _filter_metrics(self, metrics, label_filter):
8080
"""
8181
Filters a list of metrics by a label_filter.
8282
"""
83+
filtered_metrics = []
8384
for label_name, label_value in label_filter.items():
8485
if label_name not in self.labels.global_labels:
8586
raise ValueError("label_filter contains unknown label: %s", label_name)
8687
if label_value not in self.labels.global_labels[label_name]:
8788
raise ValueError("[%s] label_filter contains unknown label value: %s" % (label_name, label_value))
88-
return [metric for metric in metrics if metric.labels[label_name] == label_value]
89+
for metric in metrics:
90+
if label_name in metric.labels and metric.labels[label_name] == label_value:
91+
filtered_metrics.append(metric)
92+
93+
return filtered_metrics
8994

9095
def export(self, label_filter=None):
9196
"""

0 commit comments

Comments
 (0)