1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
from __future__ import absolute_import, unicode_literals
from .. import REGISTRY, generate_latest, CONTENT_TYPE_LATEST
from twisted.web.resource import Resource
class MetricsResource(Resource):
"""
Twisted ``Resource`` that serves prometheus metrics.
"""
isLeaf = True
def __init__(self, registry=REGISTRY):
self.registry = registry
def render_GET(self, request):
request.setHeader(b'Content-Type', CONTENT_TYPE_LATEST.encode('ascii'))
return generate_latest(self.registry)
|