Add counter for errored requests

This commit is contained in:
Claudio Ortolina
2026-03-11 11:33:11 +00:00
parent 5ddc9ae466
commit c4bbd7a0f6
+11
View File
@@ -129,6 +129,11 @@ defmodule MusicLibraryWeb.Telemetry do
tag_values: &phoenix_status_tag/1, tag_values: &phoenix_status_tag/1,
reporter_options: [nav: "HTTP"] reporter_options: [nav: "HTTP"]
), ),
counter("plug.router_dispatch.exception.duration",
tags: [:status],
tag_values: &router_exception_status_tag/1,
reporter_options: [nav: "HTTP"]
),
# LiveView Metrics # LiveView Metrics
summary("phoenix.live_view.mount.stop.duration", summary("phoenix.live_view.mount.stop.duration",
@@ -220,6 +225,12 @@ defmodule MusicLibraryWeb.Telemetry do
defp phoenix_status_tag(%{conn: %{status: status}}), do: %{status: to_string(status)} defp phoenix_status_tag(%{conn: %{status: status}}), do: %{status: to_string(status)}
defp phoenix_status_tag(_metadata), do: %{status: "unknown"} defp phoenix_status_tag(_metadata), do: %{status: "unknown"}
defp router_exception_status_tag(%{kind: :error, reason: reason}) do
%{status: reason |> Plug.Exception.status() |> to_string()}
end
defp router_exception_status_tag(_metadata), do: %{status: "500"}
defp live_view_tag(%{socket: %{view: view}}) do defp live_view_tag(%{socket: %{view: view}}) do
module = view |> inspect() |> String.split(".") |> Enum.take(-2) |> Enum.join(".") module = view |> inspect() |> String.split(".") |> Enum.take(-2) |> Enum.join(".")
%{view: module} %{view: module}