From 264aafbf43ce4e872d6fc83ca366f630cf4dabc1 Mon Sep 17 00:00:00 2001 From: Alexander Borg Date: Sun, 14 Sep 2025 18:12:17 +0200 Subject: [PATCH] Fix jwt-token --- management/src/pages/System.jsx | 98 ++++++++++++++++++++------------- server/routes/management.js | 54 +++++++----------- 2 files changed, 81 insertions(+), 71 deletions(-) diff --git a/management/src/pages/System.jsx b/management/src/pages/System.jsx index e0583df..d457d70 100644 --- a/management/src/pages/System.jsx +++ b/management/src/pages/System.jsx @@ -103,24 +103,31 @@ const System = () => {

{name.replace('drone-detection-', '').replace('uamils-', '')}

-
-
- CPU - {metrics.cpu} + {metrics.error ? ( +
+
Not Available
+
{metrics.message}
-
- Memory - {metrics.memory.percentage} + ) : ( +
+
+ CPU + {metrics.cpu} +
+
+ Memory + {metrics.memory.percentage} +
+
+ Network I/O + {metrics.network} +
+
+ Disk I/O + {metrics.disk} +
-
- Network I/O - {metrics.network} -
-
- Disk I/O - {metrics.disk} -
-
+ )}
) @@ -233,26 +240,33 @@ const System = () => { -
-
-
- CPU Usage - {systemInfo.system.cpu.usage} + {systemInfo.system.error ? ( +
+
System metrics unavailable
+
{systemInfo.system.message}
+
+ ) : ( +
+
+
+ CPU Usage + {systemInfo.system.cpu.usage} +
+
- -
-
-
- Memory - {systemInfo.system.memory.used} / {systemInfo.system.memory.total} +
+
+ Memory + {systemInfo.system.memory.used} / {systemInfo.system.memory.total} +
+ +
+
+ Disk + {systemInfo.system.disk}
-
-
- Disk - {systemInfo.system.disk} -
-
+ )} @@ -290,11 +304,19 @@ const System = () => { {/* Container Metrics */}
-
- {Object.entries(systemInfo.containers).map(([name, metrics]) => ( - - ))} -
+ {systemInfo.containers.error ? ( +
+ +
Docker containers not available
+
{systemInfo.containers.message}
+
+ ) : ( +
+ {Object.entries(systemInfo.containers).map(([name, metrics]) => ( + + ))} +
+ )}
diff --git a/server/routes/management.js b/server/routes/management.js index e95acda..e054f3e 100644 --- a/server/routes/management.js +++ b/server/routes/management.js @@ -151,26 +151,9 @@ router.get('/system-info', async (req, res) => { }, {}); } catch (dockerError) { console.log('Docker stats not available:', dockerError.message); - // Fallback to mock data for development containerMetrics = { - 'drone-detection-backend': { - cpu: '2.5%', - memory: { usage: '256MB / 1GB', percentage: '25.6%' }, - network: '1.2MB / 3.4MB', - disk: '45MB / 12MB' - }, - 'drone-detection-frontend': { - cpu: '0.8%', - memory: { usage: '128MB / 512MB', percentage: '25%' }, - network: '800KB / 2.1MB', - disk: '12MB / 5MB' - }, - 'drone-detection-management': { - cpu: '1.2%', - memory: { usage: '192MB / 512MB', percentage: '37.5%' }, - network: '500KB / 1.2MB', - disk: '8MB / 3MB' - } + error: 'Docker not available or containers not running', + message: dockerError.message }; } @@ -202,9 +185,11 @@ router.get('/system-info', async (req, res) => { } catch (sysError) { console.log('System metrics not available:', sysError.message); systemMetrics = { - memory: { used: '1.2GB', total: '4GB', percentage: 30 }, - cpu: { usage: '15.5%', percentage: 15.5 }, - disk: '2.1GB / 20GB (11%)' + error: 'System metrics not available', + message: sysError.message, + memory: { used: 'N/A', total: 'N/A', percentage: 0 }, + cpu: { usage: 'N/A', percentage: 0 }, + disk: 'N/A' }; } @@ -261,18 +246,21 @@ router.get('/system-info', async (req, res) => { }); }; - // Check SSL for main domains - const sslChecks = await Promise.all([ - checkSSLCert('dev.uggla.uamils.com'), - checkSSLCert('uamils-ab.dev.uggla.uamils.com'), - checkSSLCert('management.dev.uggla.uamils.com') - ]); + // Check SSL for management host only + const managementHost = 'management.dev.uggla.uamils.com'; + let sslStatus = {}; - const sslStatus = { - 'dev.uggla.uamils.com': sslChecks[0], - 'uamils-ab.dev.uggla.uamils.com': sslChecks[1], - 'management.dev.uggla.uamils.com': sslChecks[2] - }; + try { + const sslCheck = await checkSSLCert(managementHost); + sslStatus[managementHost] = sslCheck; + } catch (sslError) { + console.log('SSL check failed:', sslError.message); + sslStatus[managementHost] = { + status: 'error', + expiresAt: null, + error: 'SSL check failed: ' + sslError.message + }; + } res.json({ success: true,