feat: add alerting system with configurable rules and UI (MON-02, MON-03)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Dorian
2026-03-11 12:28:44 +00:00
parent baeeb72f27
commit 6945bc4daf
7 changed files with 989 additions and 5 deletions

View File

@@ -1599,3 +1599,92 @@ html:has(body.video-background-active)::before {
transform: translateY(0);
}
}
/* Monitoring dashboard */
.monitoring-stat-card {
background: rgba(0, 0, 0, 0.3);
border: 1px solid rgba(255, 255, 255, 0.08);
border-radius: 0.75rem;
padding: 1rem;
}
.monitoring-chart {
width: 100%;
height: auto;
display: block;
}
.monitoring-bar-container {
width: 80px;
height: 6px;
background: rgba(255, 255, 255, 0.08);
border-radius: 3px;
overflow: hidden;
flex-shrink: 0;
}
.monitoring-bar-fill {
height: 100%;
border-radius: 3px;
transition: width 0.3s ease;
}
.monitoring-bar-ok {
background: #4ade80;
}
.monitoring-bar-warn {
background: #f59e0b;
}
.monitoring-bar-danger {
background: #ef4444;
}
.monitoring-alert-toggle {
position: relative;
display: inline-block;
width: 36px;
height: 20px;
flex-shrink: 0;
}
.monitoring-alert-toggle input {
opacity: 0;
width: 0;
height: 0;
}
.monitoring-alert-toggle-slider {
position: absolute;
cursor: pointer;
inset: 0;
background: rgba(255, 255, 255, 0.1);
border-radius: 10px;
transition: background 0.2s ease;
}
.monitoring-alert-toggle-slider::before {
content: '';
position: absolute;
height: 14px;
width: 14px;
left: 3px;
bottom: 3px;
background: rgba(255, 255, 255, 0.6);
border-radius: 50%;
transition: transform 0.2s ease;
}
.monitoring-alert-toggle input:checked + .monitoring-alert-toggle-slider {
background: rgba(74, 222, 128, 0.4);
}
.monitoring-alert-toggle input:checked + .monitoring-alert-toggle-slider::before {
transform: translateX(16px);
background: #4ade80;
}
.monitoring-threshold-input {
width: 60px;
padding: 4px 8px;
background: rgba(255, 255, 255, 0.08);
border: 1px solid rgba(255, 255, 255, 0.12);
border-radius: 6px;
color: white;
font-size: 0.75rem;
text-align: right;
}