INNER CODE UNIT · Python
collect
braedon/prometheus-es-exporter · prometheus_es_exporter/__init__.py:53
def collect(self):
try:
response = self.es_client.cluster.health(level=self.level, request_timeout=self.timeout)
metrics = cluster_health_parser.parse_response(response, self.metric_name_list)
metric_dict = group_metrics(metrics)
except ConnectionTimeout:
log.warning('Timeout while fetching %(description)s (timeout %(timeout_s)ss).',
{'description': self.description, 'timeout_s': self.timeout})
yield collector_up_gauge(self.metric_name_list, self.description, succeeded=False)
except Exception:
log.exception('Error while fetching %(description)s.',
{'description': self.description})
yield collector_up_gauge(self.metric_name_list, self.description, succeeded=False)
else:
yield from gauge_generator(metric_dict)
yield collector_up_gauge(self.metric_name_list, self.description)