mirror of
https://github.com/fawney19/Aether.git
synced 2026-09-02 01:10:23 +08:00
feat(proxy): record tunnel stability metrics
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
ALTER TABLE proxy_node_events
|
||||
ADD COLUMN event_metadata TEXT NULL AFTER detail;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS proxy_node_metrics_1m (
|
||||
node_id VARCHAR(64) NOT NULL,
|
||||
bucket_start_unix_secs BIGINT NOT NULL,
|
||||
samples BIGINT NOT NULL DEFAULT 0,
|
||||
uptime_samples BIGINT NOT NULL DEFAULT 0,
|
||||
active_connections_sum BIGINT NOT NULL DEFAULT 0,
|
||||
active_connections_max BIGINT NOT NULL DEFAULT 0,
|
||||
heartbeat_rtt_ms_sum BIGINT NOT NULL DEFAULT 0,
|
||||
heartbeat_rtt_ms_max BIGINT NOT NULL DEFAULT 0,
|
||||
connect_errors_delta BIGINT NOT NULL DEFAULT 0,
|
||||
disconnects_delta BIGINT NOT NULL DEFAULT 0,
|
||||
error_events_delta BIGINT NOT NULL DEFAULT 0,
|
||||
ws_in_bytes_delta BIGINT NOT NULL DEFAULT 0,
|
||||
ws_out_bytes_delta BIGINT NOT NULL DEFAULT 0,
|
||||
ws_in_frames_delta BIGINT NOT NULL DEFAULT 0,
|
||||
ws_out_frames_delta BIGINT NOT NULL DEFAULT 0,
|
||||
PRIMARY KEY (node_id, bucket_start_unix_secs),
|
||||
INDEX idx_proxy_node_metrics_1m_bucket_start (bucket_start_unix_secs)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS proxy_node_metrics_1h (
|
||||
node_id VARCHAR(64) NOT NULL,
|
||||
bucket_start_unix_secs BIGINT NOT NULL,
|
||||
samples BIGINT NOT NULL DEFAULT 0,
|
||||
uptime_samples BIGINT NOT NULL DEFAULT 0,
|
||||
active_connections_sum BIGINT NOT NULL DEFAULT 0,
|
||||
active_connections_max BIGINT NOT NULL DEFAULT 0,
|
||||
heartbeat_rtt_ms_sum BIGINT NOT NULL DEFAULT 0,
|
||||
heartbeat_rtt_ms_max BIGINT NOT NULL DEFAULT 0,
|
||||
connect_errors_delta BIGINT NOT NULL DEFAULT 0,
|
||||
disconnects_delta BIGINT NOT NULL DEFAULT 0,
|
||||
error_events_delta BIGINT NOT NULL DEFAULT 0,
|
||||
ws_in_bytes_delta BIGINT NOT NULL DEFAULT 0,
|
||||
ws_out_bytes_delta BIGINT NOT NULL DEFAULT 0,
|
||||
ws_in_frames_delta BIGINT NOT NULL DEFAULT 0,
|
||||
ws_out_frames_delta BIGINT NOT NULL DEFAULT 0,
|
||||
PRIMARY KEY (node_id, bucket_start_unix_secs),
|
||||
INDEX idx_proxy_node_metrics_1h_bucket_start (bucket_start_unix_secs)
|
||||
);
|
||||
@@ -0,0 +1,50 @@
|
||||
ALTER TABLE public.proxy_node_events
|
||||
ADD COLUMN IF NOT EXISTS event_metadata json;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS public.proxy_node_metrics_1m (
|
||||
node_id character varying(36) NOT NULL,
|
||||
bucket_start_unix_secs bigint NOT NULL,
|
||||
samples bigint DEFAULT 0 NOT NULL,
|
||||
uptime_samples bigint DEFAULT 0 NOT NULL,
|
||||
active_connections_sum bigint DEFAULT 0 NOT NULL,
|
||||
active_connections_max bigint DEFAULT 0 NOT NULL,
|
||||
heartbeat_rtt_ms_sum bigint DEFAULT 0 NOT NULL,
|
||||
heartbeat_rtt_ms_max bigint DEFAULT 0 NOT NULL,
|
||||
connect_errors_delta bigint DEFAULT 0 NOT NULL,
|
||||
disconnects_delta bigint DEFAULT 0 NOT NULL,
|
||||
error_events_delta bigint DEFAULT 0 NOT NULL,
|
||||
ws_in_bytes_delta bigint DEFAULT 0 NOT NULL,
|
||||
ws_out_bytes_delta bigint DEFAULT 0 NOT NULL,
|
||||
ws_in_frames_delta bigint DEFAULT 0 NOT NULL,
|
||||
ws_out_frames_delta bigint DEFAULT 0 NOT NULL,
|
||||
PRIMARY KEY (node_id, bucket_start_unix_secs),
|
||||
CONSTRAINT proxy_node_metrics_1m_node_id_fkey
|
||||
FOREIGN KEY (node_id) REFERENCES public.proxy_nodes(id) ON DELETE CASCADE
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS public.proxy_node_metrics_1h (
|
||||
node_id character varying(36) NOT NULL,
|
||||
bucket_start_unix_secs bigint NOT NULL,
|
||||
samples bigint DEFAULT 0 NOT NULL,
|
||||
uptime_samples bigint DEFAULT 0 NOT NULL,
|
||||
active_connections_sum bigint DEFAULT 0 NOT NULL,
|
||||
active_connections_max bigint DEFAULT 0 NOT NULL,
|
||||
heartbeat_rtt_ms_sum bigint DEFAULT 0 NOT NULL,
|
||||
heartbeat_rtt_ms_max bigint DEFAULT 0 NOT NULL,
|
||||
connect_errors_delta bigint DEFAULT 0 NOT NULL,
|
||||
disconnects_delta bigint DEFAULT 0 NOT NULL,
|
||||
error_events_delta bigint DEFAULT 0 NOT NULL,
|
||||
ws_in_bytes_delta bigint DEFAULT 0 NOT NULL,
|
||||
ws_out_bytes_delta bigint DEFAULT 0 NOT NULL,
|
||||
ws_in_frames_delta bigint DEFAULT 0 NOT NULL,
|
||||
ws_out_frames_delta bigint DEFAULT 0 NOT NULL,
|
||||
PRIMARY KEY (node_id, bucket_start_unix_secs),
|
||||
CONSTRAINT proxy_node_metrics_1h_node_id_fkey
|
||||
FOREIGN KEY (node_id) REFERENCES public.proxy_nodes(id) ON DELETE CASCADE
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_proxy_node_metrics_1m_bucket_start
|
||||
ON public.proxy_node_metrics_1m (bucket_start_unix_secs);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_proxy_node_metrics_1h_bucket_start
|
||||
ON public.proxy_node_metrics_1h (bucket_start_unix_secs);
|
||||
@@ -0,0 +1,46 @@
|
||||
ALTER TABLE proxy_node_events
|
||||
ADD COLUMN event_metadata TEXT;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS proxy_node_metrics_1m (
|
||||
node_id TEXT NOT NULL,
|
||||
bucket_start_unix_secs INTEGER NOT NULL,
|
||||
samples INTEGER NOT NULL DEFAULT 0,
|
||||
uptime_samples INTEGER NOT NULL DEFAULT 0,
|
||||
active_connections_sum INTEGER NOT NULL DEFAULT 0,
|
||||
active_connections_max INTEGER NOT NULL DEFAULT 0,
|
||||
heartbeat_rtt_ms_sum INTEGER NOT NULL DEFAULT 0,
|
||||
heartbeat_rtt_ms_max INTEGER NOT NULL DEFAULT 0,
|
||||
connect_errors_delta INTEGER NOT NULL DEFAULT 0,
|
||||
disconnects_delta INTEGER NOT NULL DEFAULT 0,
|
||||
error_events_delta INTEGER NOT NULL DEFAULT 0,
|
||||
ws_in_bytes_delta INTEGER NOT NULL DEFAULT 0,
|
||||
ws_out_bytes_delta INTEGER NOT NULL DEFAULT 0,
|
||||
ws_in_frames_delta INTEGER NOT NULL DEFAULT 0,
|
||||
ws_out_frames_delta INTEGER NOT NULL DEFAULT 0,
|
||||
PRIMARY KEY (node_id, bucket_start_unix_secs)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS proxy_node_metrics_1h (
|
||||
node_id TEXT NOT NULL,
|
||||
bucket_start_unix_secs INTEGER NOT NULL,
|
||||
samples INTEGER NOT NULL DEFAULT 0,
|
||||
uptime_samples INTEGER NOT NULL DEFAULT 0,
|
||||
active_connections_sum INTEGER NOT NULL DEFAULT 0,
|
||||
active_connections_max INTEGER NOT NULL DEFAULT 0,
|
||||
heartbeat_rtt_ms_sum INTEGER NOT NULL DEFAULT 0,
|
||||
heartbeat_rtt_ms_max INTEGER NOT NULL DEFAULT 0,
|
||||
connect_errors_delta INTEGER NOT NULL DEFAULT 0,
|
||||
disconnects_delta INTEGER NOT NULL DEFAULT 0,
|
||||
error_events_delta INTEGER NOT NULL DEFAULT 0,
|
||||
ws_in_bytes_delta INTEGER NOT NULL DEFAULT 0,
|
||||
ws_out_bytes_delta INTEGER NOT NULL DEFAULT 0,
|
||||
ws_in_frames_delta INTEGER NOT NULL DEFAULT 0,
|
||||
ws_out_frames_delta INTEGER NOT NULL DEFAULT 0,
|
||||
PRIMARY KEY (node_id, bucket_start_unix_secs)
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_proxy_node_metrics_1m_bucket_start
|
||||
ON proxy_node_metrics_1m (bucket_start_unix_secs);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_proxy_node_metrics_1h_bucket_start
|
||||
ON proxy_node_metrics_1h (bucket_start_unix_secs);
|
||||
Reference in New Issue
Block a user