feat(dashboard): add real system metrics endpoint and fix UI dark-theme issues
Some checks failed
CI / Check (push) Has been cancelled
CI / Clippy (push) Has been cancelled
CI / Formatting (push) Has been cancelled
CI / Test (push) Has been cancelled
CI / Release Build (push) Has been cancelled

- Add /api/system/metrics endpoint reading real data from /proc (CPU, memory, disk, network, load avg, uptime, connections)
- Replace hardcoded fake monitoring metrics with live API data
- Replace random chart data with real latency/error-rate/client-request charts from DB logs
- Fix light-mode colors leaking into dark theme (monitoring stream bg, settings tokens, warning card)
- Add 'models' to page title map, fix System Health card structure
- Move inline styles to CSS classes (monitoring-layout, monitoring-stream, token-item, warning-card)
- Prevent duplicate style injection in monitoring page
This commit is contained in:
2026-03-02 10:52:15 -05:00
parent 8613f30c7b
commit d386820d16
6 changed files with 315 additions and 135 deletions

View File

@@ -42,7 +42,7 @@ class SettingsPage {
<label>Authentication Tokens</label>
<div class="tokens-list" style="display: flex; flex-direction: column; gap: 0.5rem; margin-bottom: 1rem;">
${this.settings.server.auth_tokens.map(token => `
<div class="token-item" style="display: flex; gap: 0.5rem; align-items: center; background: #f8fafc; padding: 0.5rem; border-radius: 6px; border: 1px solid #e2e8f0;">
<div class="token-item">
<code style="flex: 1;">${token}</code>
<button class="btn-action" title="Copy" onclick="navigator.clipboard.writeText('${token}')">
<i class="fas fa-copy"></i>
@@ -105,7 +105,7 @@ class SettingsPage {
</div>
</div>
<div class="card" style="border: 1px dashed var(--warning); background: #fffbeb;">
<div class="card warning-card">
<div class="card-body" style="display: flex; align-items: center; gap: 1rem;">
<i class="fas fa-exclamation-triangle" style="font-size: 1.5rem; color: var(--warning);"></i>
<div>