INNER CODE UNIT · Python
NodesStatsCollector
braedon/prometheus-es-exporter · prometheus_es_exporter/__init__.py:72
class NodesStatsCollector(object):
def __init__(self, es_client, timeout, metrics=None):
self.metric_name_list = ['es', 'nodes_stats']
self.description = 'Nodes Stats'
self.es_client = es_client
self.timeout = timeout
self.metrics = metrics
def collect(self):
try:
response = self.es_client.nodes.stats(metric=self.metrics, request_timeout=self.timeout)
metrics = nodes_stats_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})