feat(observability): implement global database error logging, Prometheus error metrics, and max 3-panel Grafana dashboard

This commit is contained in:
mamad
2026-08-27 22:42:19 +03:30
parent f7c80b68d2
commit 8eb5ca0a3f
8 changed files with 268 additions and 123 deletions
+13
View File
@@ -71,6 +71,19 @@ CREATE TABLE IF NOT EXISTS settings (
description TEXT
);
CREATE TABLE IF NOT EXISTS error_logs (
id BIGSERIAL PRIMARY KEY,
service_name VARCHAR(64) NOT NULL,
error_type VARCHAR(128) NOT NULL,
error_message TEXT NOT NULL,
traceback TEXT,
context JSONB DEFAULT '{}'::jsonb,
created_at TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP
);
CREATE INDEX IF NOT EXISTS idx_error_logs_created_at ON error_logs(created_at DESC);
CREATE INDEX IF NOT EXISTS idx_error_logs_service ON error_logs(service_name);
-- Migration safety for existing tables
ALTER TABLE targets ADD COLUMN IF NOT EXISTS personality TEXT DEFAULT '';
ALTER TABLE targets ADD COLUMN IF NOT EXISTS custom_footer TEXT DEFAULT '';