log = logging.getLogger(__name__)
-OSM_METRIC_PREFIX = 'osm_'
+OSM_METRIC_PREFIX = "osm_"
class PrometheusBackend(BaseBackend):
-
def __init__(self):
self.custom_collector = CustomCollector()
self._start_exporter(8000)
def handle(self, metrics: List[Metric]):
- log.debug('handle')
- log.debug('metrics: %s', metrics)
+ log.debug("handle")
+ log.debug("metrics: %s", metrics)
prometheus_metrics = {}
for metric in metrics:
if metric.name not in prometheus_metrics:
prometheus_metrics[metric.name] = GaugeMetricFamily(
OSM_METRIC_PREFIX + metric.name,
- 'OSM metric',
- labels=list(metric.tags.keys())
+ "OSM metric",
+ labels=list(metric.tags.keys()),
)
- prometheus_metrics[metric.name].add_metric(list(metric.tags.values()), metric.value)
+ prometheus_metrics[metric.name].add_metric(
+ list(metric.tags.values()), metric.value
+ )
self.custom_collector.metrics = prometheus_metrics.values()
def _start_exporter(self, port):
- log.debug('_start_exporter')
- log.debug('port: %s', port)
+ log.debug("_start_exporter")
+ log.debug("port: %s", port)
REGISTRY.register(self.custom_collector)
log.info("Starting MON Prometheus exporter at port %s", port)
start_http_server(port)
class CustomCollector(object):
-
def __init__(self):
self.metrics = []
def describe(self):
- log.debug('describe')
+ log.debug("describe")
return []
def collect(self):