db timeout increase
This commit is contained in:
parent
a0798c49f9
commit
91cd2688f7
4 changed files with 38 additions and 1 deletions
|
|
@ -15,6 +15,8 @@ config :aprsme, Aprsme.Repo,
|
||||||
stacktrace: true,
|
stacktrace: true,
|
||||||
show_sensitive_data_on_connection_error: true,
|
show_sensitive_data_on_connection_error: true,
|
||||||
pool_size: 10,
|
pool_size: 10,
|
||||||
|
pool_timeout: 5000,
|
||||||
|
timeout: 15_000,
|
||||||
log: false,
|
log: false,
|
||||||
types: Aprsme.PostgresTypes
|
types: Aprsme.PostgresTypes
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -50,6 +50,8 @@ if config_env() == :prod do
|
||||||
# ssl: true,
|
# ssl: true,
|
||||||
url: database_url,
|
url: database_url,
|
||||||
pool_size: String.to_integer(System.get_env("POOL_SIZE") || "10"),
|
pool_size: String.to_integer(System.get_env("POOL_SIZE") || "10"),
|
||||||
|
pool_timeout: String.to_integer(System.get_env("POOL_TIMEOUT") || "5000"),
|
||||||
|
timeout: String.to_integer(System.get_env("DB_TIMEOUT") || "15000"),
|
||||||
socket_options: maybe_ipv6,
|
socket_options: maybe_ipv6,
|
||||||
types: Aprsme.PostgresTypes
|
types: Aprsme.PostgresTypes
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -463,7 +463,19 @@ defmodule Aprsme.Packets do
|
||||||
"""
|
"""
|
||||||
@spec get_total_packet_count() :: non_neg_integer()
|
@spec get_total_packet_count() :: non_neg_integer()
|
||||||
def get_total_packet_count do
|
def get_total_packet_count do
|
||||||
Repo.one(from p in Packet, select: count(p.id))
|
Repo.one(from p in Packet, select: count(p.id)) || 0
|
||||||
|
rescue
|
||||||
|
DBConnection.ConnectionError ->
|
||||||
|
require Logger
|
||||||
|
|
||||||
|
Logger.warning("Database connection error in get_total_packet_count, returning 0")
|
||||||
|
0
|
||||||
|
|
||||||
|
error ->
|
||||||
|
require Logger
|
||||||
|
|
||||||
|
Logger.error("Error getting total packet count: #{inspect(error)}")
|
||||||
|
0
|
||||||
end
|
end
|
||||||
|
|
||||||
@doc """
|
@doc """
|
||||||
|
|
|
||||||
|
|
@ -328,6 +328,27 @@ defmodule AprsmeWeb.StatusLive.Index do
|
||||||
|
|
||||||
defp get_aprs_status do
|
defp get_aprs_status do
|
||||||
Aprsme.Is.get_status()
|
Aprsme.Is.get_status()
|
||||||
|
rescue
|
||||||
|
error ->
|
||||||
|
require Logger
|
||||||
|
|
||||||
|
Logger.error("Error getting APRS status: #{inspect(error)}")
|
||||||
|
# Return a default status when database is unavailable
|
||||||
|
%{
|
||||||
|
connected: false,
|
||||||
|
server: "unknown",
|
||||||
|
port: 0,
|
||||||
|
connected_at: nil,
|
||||||
|
uptime_seconds: 0,
|
||||||
|
login_id: "unknown",
|
||||||
|
filter: "unknown",
|
||||||
|
packet_stats: %{
|
||||||
|
total_packets: 0,
|
||||||
|
packets_per_second: 0,
|
||||||
|
last_packet_at: nil
|
||||||
|
},
|
||||||
|
stored_packet_count: 0
|
||||||
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
defp get_app_version do
|
defp get_app_version do
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue