connect_timeout: 20_000,
domain_lookup_timeout: 5_000,
tls_handshake_timeout: 5_000,
- retry_timeout: 100,
+ retry: 0,
await_up_timeout: 5_000
]
try do
case Connections.checkin(uri, :gun_connections) do
nil ->
- Logger.info(
+ Logger.debug(
"Gun connections pool checkin was not successful. Trying to open conn for next request."
)
opts
conn when is_pid(conn) ->
- Logger.debug("received conn #{inspect(conn)} #{Connections.compose_uri(uri)}")
+ Logger.debug(
+ "received conn #{inspect(conn)} #{uri.scheme}://#{Connections.compose_uri(uri)}"
+ )
opts
|> Keyword.put(:conn, conn)
end
rescue
error ->
- Logger.warn("Gun connections pool checkin caused error #{inspect(error)}")
+ Logger.warn(
+ "Gun connections pool checkin caused error #{uri.scheme}://#{
+ Connections.compose_uri(uri)
+ } #{inspect(error)}"
+ )
+
opts
catch
:exit, {:timeout, _} ->
- Logger.info(
- "Gun connections pool checkin with timeout error #{Connections.compose_uri(uri)}"
+ Logger.warn(
+ "Gun connections pool checkin with timeout error #{uri.scheme}://#{
+ Connections.compose_uri(uri)
+ }"
)
opts
:exit, error ->
- Logger.warn("Gun pool checkin exited with error #{inspect(error)}")
+ Logger.warn(
+ "Gun pool checkin exited with error #{uri.scheme}://#{Connections.compose_uri(uri)} #{
+ inspect(error)
+ }"
+ )
+
opts
end
end
opts =
opts
|> Enum.into(%{})
- |> Map.put_new(:receive, false)
- |> Map.put_new(:retry, pool_opts[:retry] || 5)
+ |> Map.put_new(:retry, pool_opts[:retry] || 0)
|> Map.put_new(:retry_timeout, pool_opts[:retry_timeout] || 100)
|> Map.put_new(:await_up_timeout, pool_opts[:await_up_timeout] || 5_000)
put_in(state.conns[key], %{conn | conn_state: conn_state, used_by: used_by})
else
false ->
- Logger.warn("checkout for closed conn #{inspect(conn_pid)}")
+ Logger.debug("checkout for closed conn #{inspect(conn_pid)}")
state
nil ->
- Logger.info("checkout for alive conn #{inspect(conn_pid)}, but is not in state")
+ Logger.debug("checkout for alive conn #{inspect(conn_pid)}, but is not in state")
state
end
})
else
:error_gun_info ->
- Logger.warn(":gun.info caused error")
+ Logger.debug(":gun.info caused error")
state
false ->
- Logger.warn(":gun_up message for closed conn #{inspect(conn_pid)}")
+ Logger.debug(":gun_up message for closed conn #{inspect(conn_pid)}")
state
nil ->
- Logger.warn(
+ Logger.debug(
":gun_up message for alive conn #{inspect(conn_pid)}, but deleted from state"
)
else
false ->
# gun can send gun_down for closed conn, maybe connection is not closed yet
- Logger.warn(":gun_down message for closed conn #{inspect(conn_pid)}")
+ Logger.debug(":gun_down message for closed conn #{inspect(conn_pid)}")
state
nil ->
- Logger.warn(
+ Logger.debug(
":gun_down message for alive conn #{inspect(conn_pid)}, but deleted from state"
)
test "get conn on next request" do
level = Application.get_env(:logger, :level)
- Logger.configure(level: :info)
+ Logger.configure(level: :debug)
on_exit(fn -> Logger.configure(level: level) end)
uri = URI.parse("http://some-domain2.com")