Skip to content

Commit 75d6183

Browse files
authored
Merge pull request #192 from asherf/labels3
set metrics class as a class method so application can modify it.
2 parents 2c7f076 + 2301957 commit 75d6183

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

django_prometheus/middleware.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -167,9 +167,11 @@ def register(self):
167167
class PrometheusBeforeMiddleware(MiddlewareMixin):
168168
"""Monitoring middleware that should run before other middlewares."""
169169

170+
metrics_cls = Metrics
171+
170172
def __init__(self, get_response=None):
171173
super(PrometheusBeforeMiddleware, self).__init__(get_response)
172-
self.metrics = Metrics.get_instance()
174+
self.metrics = self.metrics_cls.get_instance()
173175

174176
def process_request(self, request):
175177
self.metrics.requests_total.inc()
@@ -187,12 +189,13 @@ def process_response(self, request, response):
187189

188190

189191
class PrometheusAfterMiddleware(MiddlewareMixin):
190-
191192
"""Monitoring middleware that should run after other middlewares."""
192193

194+
metrics_cls = Metrics
195+
193196
def __init__(self, get_response=None):
194197
super(PrometheusAfterMiddleware, self).__init__(get_response)
195-
self.metrics = Metrics.get_instance()
198+
self.metrics = self.metrics_cls.get_instance()
196199

197200
def _transport(self, request):
198201
return "https" if request.is_secure() else "http"

0 commit comments

Comments
 (0)