Skip to content

Commit 62ecb44

Browse files
author
Anand Sanmukhani
authored
Update MetricsList constructor
Now a MetricsList can be initialized from a list of lists, which is usually the case when reading from json files stored using PrometheusConnect
1 parent e97a9cf commit 62ecb44

File tree

1 file changed

+13
-4
lines changed

1 file changed

+13
-4
lines changed

prometheus_api_client/metrics_list.py

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,18 @@ def __init__(self, metric_data_list):
3030

3131
metric_object_list = []
3232
for i in metric_data_list:
33-
metric_object = Metric(i)
34-
if metric_object in metric_object_list:
35-
metric_object_list[metric_object_list.index(metric_object)] += metric_object
33+
# If it is a list of lists (for example: while reading from multiple json files)
34+
if isinstance(i, list):
35+
for metric in i:
36+
metric_object = Metric(metric)
37+
if metric_object in metric_object_list:
38+
metric_object_list[metric_object_list.index(metric_object)] += metric_object
39+
else:
40+
metric_object_list.append(metric_object)
3641
else:
37-
metric_object_list.append(metric_object)
42+
metric_object = Metric(i)
43+
if metric_object in metric_object_list:
44+
metric_object_list[metric_object_list.index(metric_object)] += metric_object
45+
else:
46+
metric_object_list.append(metric_object)
3847
super(MetricsList, self).__init__(metric_object_list)

0 commit comments

Comments
 (0)