具有 __main__ 的 Prometheus Flask 导出器

Prometheus Flask exporter with __main__

我想将 Prometheus Flask exporter__main__ 一起使用。

运行 env FLASK_APP=app.py flask run --port=80 --host='0.0.0.0':

这很好用
from flask import Flask
from prometheus_flask_exporter import PrometheusMetrics

app = Flask(__name__)
metrics = PrometheusMetrics(app)

app.debug = True

@app.route("/", methods=['GET'])
def index():
    return "hello world"

但我想在 __main__、运行 python app.py 中使用我的应用程序。

from flask import Flask
from prometheus_flask_exporter import PrometheusMetrics

app = Flask(__name__)
metrics = PrometheusMetrics(app=None, path='/metrics')

app.debug = True

@app.route("/", methods=['GET'])
def index():
    return "hello world"

if __name__ == '__main__':
    metrics.init_app(app)
    app.run(host='0.0.0.0', port=80)

这里我在 /metrics 获得 400。

我不知道如何正确初始化指标。

我在 gitlab from maintainer rycus86

上得到了帮助

您必须在任何值 (true/false) 上设置 env DEBUG_METRICS。 只是不能为空。

export DEBUG_METRICS=false