Files
sencho/docs/features/dashboard.mdx
T
Anso 9db97107aa fix(dashboard): harden real-time dashboard with bug fixes and design compliance (#517)
* fix(dashboard): harden real-time dashboard with bug fixes and design compliance

- Fix host alert spam: add 5-minute cooldown for CPU/RAM/disk threshold
  alerts, preventing duplicate notifications every 30s during sustained
  breaches. Extract shared dispatchWithCooldown helper (also used by
  Docker janitor alerts).
- Fix memory metric inflation: subtract filesystem cache from stored
  memory_mb values, matching the existing calculateMemoryPercent logic.
- Fix crash detection reliability: replace fragile 'seconds ago' string
  matching with a tracked Set of alerted container IDs. Containers are
  only alerted once per crash event, with automatic cleanup when they
  start running again or after a 1-hour TTL.
- Fix health status bar: exited containers now trigger 'degraded' state
  independently of unread error notifications.
- Fix CPU chart Y-axis: auto-scale when aggregate container CPU exceeds
  100% instead of silently clipping at the hardcoded domain ceiling.
- Fix grammar: 'actives' to 'active' in container count label.
- Add shadow-card-bevel to all dashboard cards per design system.
- Update dashboard docs to reflect revised health status thresholds.

* test(dashboard): update monitor service tests for new alert signatures

- Add container Id fields to crash detection test fixtures
- Update host alert assertions to match dispatchWithCooldown 3-arg call
- Fix unhealthy container test to use State: 'unhealthy' instead of
  State: 'running' (running containers are now skipped in crash detect)
2026-04-12 04:25:41 -04:00

70 lines
3.4 KiB
Plaintext

---
title: Dashboard
description: Real-time system stats, stack health, historical metrics, and recent alerts for your host machine.
---
The **Home** tab is the first thing you see after logging in. It provides a live overview of your node's health, resource usage, stack status, and recent alert activity.
<Frame>
<img src="/images/dashboard/dashboard-overview.png" alt="Sencho dashboard showing health status, resource gauges, stack health table, and historical charts" />
</Frame>
## Health status bar
The top bar provides an at-a-glance health assessment for the active node. Sencho evaluates CPU, RAM, disk usage, exited containers, and unread error alerts to derive one of three states:
| Status | Meaning |
|--------|---------|
| **Healthy** | All systems nominal. No resources above warning thresholds, no unread errors. |
| **Degraded** | At least one resource is above 80%, there are exited containers, or there are unread error alerts. |
| **Critical** | At least one resource is above 90%, or there are exited containers combined with unread errors. |
The bar also shows the active node name, the number of running containers, and the current alert count.
## Resource gauges
Five compact cards display real-time host and container metrics:
| Card | What it shows |
|------|---------------|
| **CPU** | Current CPU usage percentage, core count, and a color-coded gauge bar |
| **Memory** | RAM usage percentage, used/total in GB, and a gauge bar |
| **Disk** | Disk usage percentage, used/total for the primary mount, and a gauge bar |
| **Containers** | Active container count (hover to see managed vs. external breakdown) and exited count |
| **Network** | Current RX (receive) and TX (transmit) throughput in bytes/second |
Gauge bars turn yellow at 80% usage and red at 90%.
## Stack health table
A table listing every stack in your `COMPOSE_DIR` with live status and resource usage:
| Column | Description |
|--------|-------------|
| **Stack** | Stack name (derived from the directory name) |
| **Status** | `UP` (running) or `DN` (exited) |
| **Memory** | Total memory allocated by the stack's containers |
Click any row to navigate directly to that stack's editor. Stacks are sorted with running stacks first, then alphabetically. If you have more than 8 stacks, the table paginates automatically. For fleet-wide CPU usage, see the **CPU** resource gauge card at the top of the dashboard and the **CPU Usage** historical chart below the table.
## Historical metrics charts
Two area charts display time-series data sampled at one-minute intervals, retained for up to 24 hours:
- **CPU Usage** - normalized total CPU percentage across all managed containers over host cores
- **RAM Usage** - total memory allocated by managed containers, in GB
Hover over a data point to see the exact value at that moment.
<Note>
Charts only show data from the moment Sencho started collecting. If you just installed Sencho, they will be mostly empty until metrics accumulate.
</Note>
## Recent alerts
The bottom section displays triggered alert notifications sorted by recency. Each entry shows the severity level (info, warning, or error), the alert message, and a relative timestamp.
Use the **Clear All Notifications** button to dismiss all alerts. If you have more than 8 alerts, the list paginates.
Alert thresholds are configured per stack in **Settings > Notifications**. See [Alerts & Notifications](/features/alerts-notifications) for setup details.