in src/worker/exporters/custom_exporter.py [0:0]
def init_gauges(self):
'''Initialization of Prometheus parameters'''
self.gauges = {}
for field_name in self.field_list:
metric_name = ''
if "gpu_" in field_name:
metric_name = f"{field_name.split('_')[0]}_{field_name.split('_')[2]}"
if metric_name in metrics_list:
continue
self.gauges[metric_name] = prometheus_client.Gauge(
f'custom_{metric_name}',
f'custom_{metric_name}',
['gpu_id', 'job_id']
)
elif "ib_" in field_name:
metric_name = f"{field_name.split('_')[0]}_{field_name.split('_')[2]}"
if metric_name in metrics_list:
continue
self.gauges[metric_name] = prometheus_client.Gauge(
f'custom_{metric_name}',
f'custom_{metric_name}',
['ib_port', 'job_id']
)
else:
self.gauges[field_name] = prometheus_client.Gauge(
f'custom_{field_name}',
f'custom_{field_name}',
['job_id']
)
if metric_name != '' and metric_name not in metrics_list:
metrics_list.append(metric_name)
logging.info('Publishing metric: %s', metric_name)