From ee88be4c80abdf597013c743ce2d490ad2b3e029 Mon Sep 17 00:00:00 2001 From: Julius Unverfehrt Date: Wed, 9 Mar 2022 15:26:19 +0100 Subject: [PATCH] added prometheus endpoint to tunnel metrics from analysis endpoint --- pyinfra/flask.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pyinfra/flask.py b/pyinfra/flask.py index e8eac08..2cbc22b 100644 --- a/pyinfra/flask.py +++ b/pyinfra/flask.py @@ -1,3 +1,4 @@ +import requests from flask import Flask, jsonify from waitress import serve @@ -5,7 +6,6 @@ from pyinfra.config import CONFIG def run_probing_webserver(app, host=None, port=None, mode=None): - if not host: host = CONFIG.probing_webserver.host @@ -23,7 +23,6 @@ def run_probing_webserver(app, host=None, port=None, mode=None): def set_up_probing_webserver(): - app = Flask(__name__) @app.route("/ready", methods=["GET"]) @@ -38,4 +37,10 @@ def set_up_probing_webserver(): resp.status_code = 200 return resp + @app.route("/prometheus", methods=["GET"]) + def get_analysis_prometheus(): + prom_endpoint = f"{CONFIG.rabbitmq.callback.analysis_endpoint}/prometheus" + metric = requests.get(prom_endpoint) + return metric.text + return app