INNER CODE UNIT · Python
QueryMetricCollector
braedon/prometheus-es-exporter · prometheus_es_exporter/__init__.py:191
class QueryMetricCollector(object):
def collect(self):
# Copy METRICS_BY_QUERY before iterating over it
# as it may be updated by other threads.
# (only first level - lower levels are replaced
# wholesale, so don't worry about them)
query_metrics = METRICS_BY_QUERY.copy()
for metric_dict in query_metrics.values():
yield from gauge_generator(metric_dict)
def run_query(es_client, query_name, indices, query,
timeout, on_error, on_missing):
try:
response = es_client.search(index=indices, body=query, request_timeout=timeout)