INNER CODE UNIT · Python

__init__

stephenhillier/starlette_exporter · starlette_exporter/labels.py:12

    def __init__(
        self, key: str, allowed_values: Optional[Iterable] = None, default: str = ""
    ) -> None:
        self.key = key.lower()
        self.default = default
        self.allowed_values = allowed_values

    def __call__(self, headers: Dict) -> Any:
        v = headers.get(self.key, self.default)
        if self.allowed_values is not None and v not in self.allowed_values:
            return self.default
        return v


def from_header(key: str, allowed_values: Optional[Iterable] = None) -> Callable:
    """returns a function that retrieves a header value from a request.
    The returned function can be passed to the `labels` argument of PrometheusMiddleware
    to label metrics using a header value.

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…