INNER CODE UNIT · Python
handle_openmetrics
stephenhillier/starlette_exporter · starlette_exporter/__init__.py:48
def handle_openmetrics(request: Request) -> Response:
"""A handler to expose Prometheus metrics in OpenMetrics format.
This is required to expose metrics with exemplars.
Example usage:
```
app.add_middleware(PrometheusMiddleware)
app.add_route("/metrics", openmetrics_handler)
```
"""
registry = REGISTRY
if (
"prometheus_multiproc_dir" in os.environ
or "PROMETHEUS_MULTIPROC_DIR" in os.environ
):
registry = CollectorRegistry()
multiprocess.MultiProcessCollector(registry)