mirror of
https://github.com/fawney19/Aether.git
synced 2026-09-02 17:30:23 +08:00
85 lines
3.3 KiB
SQL
85 lines
3.3 KiB
SQL
-- Generated by aether-data-schema from schema/logical/*.toml.
|
|
-- Do not edit generated files directly; edit logical schema or explicit overrides instead.
|
|
|
|
CREATE TABLE IF NOT EXISTS proxy_nodes (
|
|
id TEXT PRIMARY KEY NOT NULL,
|
|
name TEXT NOT NULL,
|
|
ip TEXT NOT NULL,
|
|
port INTEGER NOT NULL,
|
|
region TEXT,
|
|
status TEXT NOT NULL DEFAULT 'online',
|
|
registered_by TEXT,
|
|
last_heartbeat_at INTEGER,
|
|
heartbeat_interval INTEGER NOT NULL DEFAULT 30,
|
|
active_connections INTEGER NOT NULL DEFAULT 0,
|
|
total_requests INTEGER NOT NULL DEFAULT 0,
|
|
avg_latency_ms REAL,
|
|
is_manual INTEGER NOT NULL DEFAULT 0,
|
|
proxy_url TEXT,
|
|
proxy_username TEXT,
|
|
proxy_password TEXT,
|
|
created_at INTEGER NOT NULL,
|
|
updated_at INTEGER NOT NULL,
|
|
remote_config TEXT,
|
|
config_version INTEGER NOT NULL DEFAULT 0,
|
|
hardware_info TEXT,
|
|
estimated_max_concurrency INTEGER,
|
|
tunnel_mode INTEGER NOT NULL DEFAULT 0,
|
|
tunnel_connected INTEGER NOT NULL DEFAULT 0,
|
|
tunnel_connected_at INTEGER,
|
|
failed_requests INTEGER NOT NULL DEFAULT 0,
|
|
dns_failures INTEGER NOT NULL DEFAULT 0,
|
|
stream_errors INTEGER NOT NULL DEFAULT 0,
|
|
proxy_metadata TEXT
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS proxy_node_events (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
node_id TEXT NOT NULL,
|
|
event_type TEXT NOT NULL,
|
|
detail TEXT,
|
|
event_metadata TEXT,
|
|
created_at INTEGER NOT NULL
|
|
);
|
|
|
|
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 INDEX IF NOT EXISTS idx_proxy_node_metrics_1m_bucket_start ON proxy_node_metrics_1m (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_1h_bucket_start ON proxy_node_metrics_1h (bucket_start_unix_secs);
|
|
|