Verified Commit afd25c24 authored by Kevin Morris's avatar Kevin Morris
Browse files

fix: remove HEAD and OPTIONS handling from metrics


Signed-off-by: Kevin Morris's avatarKevin Morris <kevr@0cost.org>
parent 790ca419
Pipeline #16541 passed with stages
in 2 minutes and 49 seconds
......@@ -60,6 +60,9 @@ def http_requests_total() -> Callable[[Info], None]:
labelnames=("method", "path", "status"))
def instrumentation(info: Info) -> None:
if info.request.method.lower() in ("head", "options"): # pragma: no cover
return
scope = info.request.scope
# Taken from https://github.com/stephenhillier/starlette_exporter
......@@ -70,8 +73,8 @@ def http_requests_total() -> Callable[[Info], None]:
if not (scope.get("endpoint", None) and scope.get("router", None)):
return None
root_path = scope.get("root_path", "")
app = scope.get("app", {})
root_path = scope.get("root_path", str())
app = scope.get("app", dict())
if hasattr(app, "root_path"):
app_root_path = getattr(app, "root_path")
......@@ -102,6 +105,9 @@ def http_api_requests_total() -> Callable[[Info], None]:
labelnames=("type", "status"))
def instrumentation(info: Info) -> None:
if info.request.method.lower() in ("head", "options"): # pragma: no cover
return
if info.request.url.path.rstrip("/") == "/rpc":
type = info.request.query_params.get("type", "None")
if info.response:
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment