Files
appServerInfo/db/init.sql
2026-03-11 08:27:05 +01:00

51 lines
1.5 KiB
SQL

CREATE TABLE checks (
id SERIAL PRIMARY KEY,
name TEXT NOT NULL,
type TEXT NOT NULL, -- script | docker_container | docker_network
description TEXT,
target TEXT,
script_name TEXT,
schedule_seconds INTEGER DEFAULT 60,
timeout_seconds INTEGER DEFAULT 20,
active BOOLEAN DEFAULT TRUE,
last_run TIMESTAMP,
last_status TEXT
);
CREATE TABLE results (
id SERIAL PRIMARY KEY,
check_id INTEGER REFERENCES checks(id) ON DELETE CASCADE,
run_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
status TEXT,
message TEXT,
duration_ms INTEGER
);
INSERT INTO checks (name, type, description, target)
VALUES
('Google HTTP', 'script', 'Prüft google.com', NULL),
('Postgres Container Running', 'docker_container', 'Ist Postgres Container aktiv?', 'info-postgres'),
('Default Network contains Postgres', 'docker_network', 'Ist Postgres im default Netzwerk?', 'bridge');
UPDATE checks
SET script_name = 'check_http_google.sh'
WHERE name = 'Google HTTP';
UPDATE checks
SET target = 'appServer_InfoDB'
WHERE name = 'Postgres Container Running';
UPDATE checks
SET target = 'appserver_default,appServer_InfoDB'
WHERE name = 'Default Network contains Postgres';
ALTER TABLE checks
ADD COLUMN display_id TEXT;
UPDATE checks
SET display_id = id
WHERE name = 'Google HTTP';
INSERT INTO checks (name, type, description, target, script_name, display_id)
VALUES
('schooltech.ch erreichbar', 'script', 'Prüft schooltech.ch', NULL, 'check_http_schooltech.sh', '1.1')