Fix monitoring errors and database inconsistencies on the dashboard
Fix critical bugs in the Syslog Parser monitoring endpoint fetch and update database schema for network logs. Replit-Commit-Author: Agent Replit-Commit-Session-Id: 7a657272-55ba-4a79-9a2e-f1ed9bc7a528 Replit-Commit-Checkpoint-Type: full_checkpoint Replit-Commit-Event-Id: a6dcc6ae-9272-494e-a68e-a0a2b865f1c4 Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/449cf7c4-c97a-45ae-8234-e5c5b8d6a84f/7a657272-55ba-4a79-9a2e-f1ed9bc7a528/VDRknFA
This commit is contained in:
parent
9d5ecf99c4
commit
e6fb3aefe3
54
database-schema/migrations/003_fix_network_logs_columns.sql
Normal file
54
database-schema/migrations/003_fix_network_logs_columns.sql
Normal file
@ -0,0 +1,54 @@
|
||||
-- =========================================================
|
||||
-- MIGRAZIONE 003: Fix network_logs columns (dest_ip -> destination_ip)
|
||||
-- =========================================================
|
||||
-- Assicura che le colonne di network_logs usino i nomi corretti
|
||||
|
||||
-- Rinomina dest_ip -> destination_ip se esiste
|
||||
DO $$
|
||||
BEGIN
|
||||
IF EXISTS (
|
||||
SELECT 1 FROM information_schema.columns
|
||||
WHERE table_name = 'network_logs' AND column_name = 'dest_ip'
|
||||
) THEN
|
||||
ALTER TABLE network_logs RENAME COLUMN dest_ip TO destination_ip;
|
||||
RAISE NOTICE 'Colonna dest_ip rinominata in destination_ip';
|
||||
END IF;
|
||||
END $$;
|
||||
|
||||
-- Rinomina dest_port -> destination_port se esiste
|
||||
DO $$
|
||||
BEGIN
|
||||
IF EXISTS (
|
||||
SELECT 1 FROM information_schema.columns
|
||||
WHERE table_name = 'network_logs' AND column_name = 'dest_port'
|
||||
) THEN
|
||||
ALTER TABLE network_logs RENAME COLUMN dest_port TO destination_port;
|
||||
RAISE NOTICE 'Colonna dest_port rinominata in destination_port';
|
||||
END IF;
|
||||
END $$;
|
||||
|
||||
-- Rinomina src_ip -> source_ip se esiste
|
||||
DO $$
|
||||
BEGIN
|
||||
IF EXISTS (
|
||||
SELECT 1 FROM information_schema.columns
|
||||
WHERE table_name = 'network_logs' AND column_name = 'src_ip'
|
||||
) THEN
|
||||
ALTER TABLE network_logs RENAME COLUMN src_ip TO source_ip;
|
||||
RAISE NOTICE 'Colonna src_ip rinominata in source_ip';
|
||||
END IF;
|
||||
END $$;
|
||||
|
||||
-- Rinomina src_port -> source_port se esiste
|
||||
DO $$
|
||||
BEGIN
|
||||
IF EXISTS (
|
||||
SELECT 1 FROM information_schema.columns
|
||||
WHERE table_name = 'network_logs' AND column_name = 'src_port'
|
||||
) THEN
|
||||
ALTER TABLE network_logs RENAME COLUMN src_port TO source_port;
|
||||
RAISE NOTICE 'Colonna src_port rinominata in source_port';
|
||||
END IF;
|
||||
END $$;
|
||||
|
||||
SELECT 'Migrazione 003 completata!' AS status;
|
||||
17
replit.md
17
replit.md
@ -150,6 +150,23 @@ The IDS features a React-based frontend for real-time monitoring, detection visu
|
||||
|
||||
## Fix Recenti (Novembre 2025)
|
||||
|
||||
### 🐛 Fix Monitoring Syslog Parser + Schema Database (22 Nov 2025 - 11:10)
|
||||
- **Problema 1**: Dashboard mostrava Syslog Parser in errore nonostante systemd "active (running)"
|
||||
- **Causa**: Bug fetch `signal: controller2.abort` invece di `signal: controller2.signal` in `/api/services/status`
|
||||
- **Soluzione**: Corretto parametro AbortController signal
|
||||
- **Problema 2**: Errore database `column "destination_ip" does not exist`
|
||||
- **Causa**: Database server usa `dest_ip`/`src_ip` invece di `destination_ip`/`source_ip`
|
||||
- **Soluzione**: Migrazione SQL 003 rinomina colonne in formato corretto
|
||||
- **Fix Applicati**:
|
||||
- ✅ `server/routes.ts`: Corretto signal in fetch monitoring
|
||||
- ✅ `database-schema/migrations/003_fix_network_logs_columns.sql`: Migrazione rinomina colonne
|
||||
- **Deploy**:
|
||||
1. Eseguire `./update_from_git.sh --db` per applicare migrazione
|
||||
2. Riavviare backend Node.js
|
||||
3. Dashboard mostrerà correttamente tutti i servizi (pallini verdi)
|
||||
|
||||
## Fix Recenti (Novembre 2025)
|
||||
|
||||
### 🚨 Database Full - Auto-Cleanup Fix (21 Nov 2025 - 18:00)
|
||||
- **Problema**: Database PostgreSQL pieno con **417 MILIONI di log** accumulati
|
||||
- Syslog parser ha processato 417.7M righe senza limite di retention
|
||||
|
||||
@ -370,7 +370,7 @@ export async function registerRoutes(app: Express): Promise<Server> {
|
||||
|
||||
const servicesResponse = await fetch(`${ML_BACKEND_URL}/services/status`, {
|
||||
headers: getMLBackendHeaders(),
|
||||
signal: controller2.abort,
|
||||
signal: controller2.signal,
|
||||
});
|
||||
|
||||
clearTimeout(timeout2);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user