From cb24625fb38f1c0109d2085f9e38b5426ee74a83 Mon Sep 17 00:00:00 2001 From: Mitch Ross Date: Sun, 26 Feb 2023 12:04:49 -0500 Subject: [PATCH] wip --- frigate/http.py | 14 ++++++++++---- frigate/prometheus_exporter.py | 4 +++- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/frigate/http.py b/frigate/http.py index 9cbe23434..9a534b735 100644 --- a/frigate/http.py +++ b/frigate/http.py @@ -6,7 +6,8 @@ import logging import json import os import subprocess as sp -from prometheus_client import REGISTRY, generate_latest +from prometheus_client import REGISTRY, generate_latest, make_wsgi_app +from werkzeug.middleware.dispatcher import DispatcherMiddleware import pytz import time import traceback @@ -36,7 +37,8 @@ from frigate.config import FrigateConfig from frigate.const import CLIPS_DIR, MAX_SEGMENT_DURATION, RECORD_DIR from frigate.models import Event, Recordings from frigate.object_processing import TrackedObject -from frigate.prometheus_exporter import FrigateCollector +from frigate.prometheus_exporter import setupRegistry + from frigate.stats import stats_snapshot from frigate.util import ( clean_camera_user_pass, @@ -83,7 +85,11 @@ def create_app( app.register_blueprint(bp) - + + + app.wsgi_app = DispatcherMiddleware(app.wsgi_app, { + "/metrics": make_wsgi_app(registry=setupRegistry()) + }) return app @@ -824,7 +830,7 @@ def stats(): return jsonify(stats) -@bp.route("/metrics") +@bp.route("/metrics2") def metrics(): return generate_latest() diff --git a/frigate/prometheus_exporter.py b/frigate/prometheus_exporter.py index 6675b1173..c713be39c 100644 --- a/frigate/prometheus_exporter.py +++ b/frigate/prometheus_exporter.py @@ -1,6 +1,8 @@ from prometheus_client import CollectorRegistry from prometheus_client.metrics_core import GaugeMetricFamily -from requester import Requester + +from frigate.requester import Requester + def setupRegistry():