Files
vanlink/cockpit/vanrouter/vanrouter.css
T
Andreas WredeandClaude Opus 4.8 ef6c1ce182 thermal: van-thermal daemon (CPU+NVMe monitor, alert, log)
Single sysfs sample loop drives three jobs off one daemon (modeled on
van-failover):

- live state at /run/van-thermal/state.json; new Cockpit "Temperatures"
  card reads it in the existing 5s loop (no per-refresh `sensors` shell-out)
- journal alerts on ok<->warn<->crit crossings, with clear_margin hysteresis
- throttled, self-rotating CSV history at /var/log/van-thermal.csv

Sensors resolved by hwmon name+label (coretemp/Package id 0, nvme/Composite),
never by hwmonN index (not stable across boots). Defaults: CPU warn 80 /
crit 95, NVMe warn 65 / crit 70. deploy.sh installs + enables the service.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-28 21:32:13 -04:00

20 lines
1.0 KiB
CSS

.vr-wrap { padding: 16px; max-width: 920px; }
.vr-head { display: flex; align-items: baseline; gap: 14px; }
.vr-head h2 { margin: 0; }
.card { background: #fff; border: 1px solid #d2d2d2; border-radius: 6px;
padding: 16px; margin-top: 16px; }
.card-head { display: flex; align-items: center; justify-content: space-between; }
.card h3 { margin: 0 0 10px 0; }
.card-head h3 { margin: 0; }
table { border-collapse: collapse; width: 100%; margin-top: 6px; }
th, td { text-align: left; padding: 6px 10px; border-bottom: 1px solid #ededed; font-size: 14px; }
th { color: #6a6e73; font-weight: 600; }
.pill { padding: 2px 8px; border-radius: 10px; font-size: 12px; white-space: nowrap; }
.ok { background: #bde5b8; color: #1e4f18; }
.bad { background: #f0b8b8; color: #5f1414; }
.warn { background: #f5d9a8; color: #5f4414; }
.muted { color: #6a6e73; font-size: 12px; }
.active-wan { font-weight: 700; color: #0066cc; }
.btn { margin-left: 6px; padding: 3px 10px; cursor: pointer; }
.btn[disabled] { cursor: default; opacity: 0.5; }