1
0
Fork 0
mirror of https://framagit.org/framasoft/mobilizon.git synced 2024-12-22 16:03:25 +00:00
mobilizon/lib/web/request_context.ex
Thomas Citharel 0c49ddc65b
Add "Accept-Language" header to sentry request metadata
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-04-21 10:33:42 +02:00

27 lines
937 B
Elixir

defmodule Mobilizon.Web.RequestContext do
@moduledoc """
Module to put some context into the request
"""
@spec put_request_context(Plug.Conn.t(), Keyword.t()) :: Plug.Conn.t()
def put_request_context(%Plug.Conn{} = conn, _opts \\ []) do
if Application.get_env(:sentry, :dsn) != nil do
Sentry.Context.set_request_context(%{
url: Plug.Conn.request_url(conn),
method: conn.method,
headers: %{
"User-Agent": conn |> Plug.Conn.get_req_header("user-agent") |> List.first(),
Referer: conn |> Plug.Conn.get_req_header("referer") |> List.first(),
"Accept-Language": conn |> Plug.Conn.get_req_header("accept-language") |> List.first()
},
query_string: conn.query_string,
env: %{
REQUEST_ID: conn |> Plug.Conn.get_resp_header("x-request-id") |> List.first(),
SERVER_NAME: conn.host
}
})
end
conn
end
end