From b6509b1d6732b326829f5cb7abeb7569efc68d86 Mon Sep 17 00:00:00 2001 From: Alexander Borg Date: Tue, 23 Sep 2025 12:21:00 +0200 Subject: [PATCH] Fix jwt-token --- client/src/pages/Alerts.jsx | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/client/src/pages/Alerts.jsx b/client/src/pages/Alerts.jsx index f8a4308..c69b591 100644 --- a/client/src/pages/Alerts.jsx +++ b/client/src/pages/Alerts.jsx @@ -40,17 +40,25 @@ const Alerts = () => { const fetchAlertData = async () => { try { + console.log('🔄 Fetching alerts data...'); + const [rulesRes, logsRes, statsRes] = await Promise.all([ api.get('/alerts/rules'), api.get('/alerts/logs?limit=50'), api.get('/alerts/stats?hours=24') ]); + console.log('📊 API Responses:', { + rules: rulesRes.data, + logs: logsRes.data, + stats: statsRes.data + }); + setAlertRules(rulesRes.data?.data || []); setAlertLogs(logsRes.data?.data || []); setAlertStats(statsRes.data?.data || null); } catch (error) { - console.error('Error fetching alert data:', error); + console.error('❌ Error fetching alert data:', error); // Set default values on error setAlertRules([]); setAlertLogs([]); @@ -71,6 +79,17 @@ const Alerts = () => { alertStats: alertStats ? 'present' : 'null', invalidRules: alertRules?.filter(rule => typeof rule.alert_channels === 'object' && !Array.isArray(rule.alert_channels)) }); + + // Check for any objects containing the problematic keys + alertRules?.forEach((rule, index) => { + if (rule.alert_channels && typeof rule.alert_channels === 'object') { + const keys = Object.keys(rule.alert_channels); + const hasProblematicKeys = ['sms', 'webhook', 'email'].some(key => keys.includes(key)); + if (hasProblematicKeys) { + console.warn(`🚨 Rule ${index} has object alert_channels:`, rule.alert_channels); + } + } + }); }, [alertRules, alertLogs, alertStats]); // Group alerts by alert_event_id to show related alerts together