Monitoring & Logs
What to watch
Section titled “What to watch”| Layer | Signals | Where |
|---|---|---|
| Panel | HTTP errors, login failures, DB/Redis health | Admin → Overview (System Health), System Errors |
| Nodes | Reachability, CPU/memory/disk, agent version drift | Admin → Nodes, node detail stats |
| Servers | Crash loops, backup failures, quota usage | Servers, per-server Metrics and Backups tabs |
| Platform | Disk free everywhere, certificate expiry, backup age | Alerts plus your own host monitoring |
The admin dashboard shows System Health (Database, Cluster Nodes) and the cluster resource chart. Ship the same numbers to your existing monitoring (Prometheus/Grafana, Uptime Kuma, log shipping) rather than living in the panel UI.
System Errors
Section titled “System Errors”Open Admin → System Errors (/admin/system-errors). This is the panel’s
own error log: exceptions captured from the backend, agents, and frontend. The
header shows Live when the realtime stream is connected (otherwise
Offline) plus the current error count.
- Filter with Level (All levels, Warning, Error, Critical),
Component (for example
auth, server...), Node, Status (All, Resolved, Unresolved), From/To, and Quick range (Custom, Last 1h, Last 6h, Last 24h, Last 7d). Active filters show as chips; Clear resets them. - Per row, View details opens the stack trace and metadata, Copy for AI copies a Markdown report, and Resolve marks one error handled.
- Resolve all marks every error matching the current filters resolved (disabled while you are filtering to resolved errors).
- Export opens a dialog: pick a Time range and a Format — JSON, or Markdown for pasting into an assistant. Up to 5,000 of the most recent errors are included.
- Download diagnostics captures panel, node, server, and config data for a time window as one redacted ZIP — see diagnostics bundle.
Triage here first when a page 500s or a background job misbehaves, then read
Audit Logs (/admin/audit-logs) for who triggered the action. Audit logs
are your source of truth for staff actions; export CSV and protect retention
under Admin → Security.
Set up alerting
Section titled “Set up alerting”-
Open Admin → Alerts and select Create Rule.
-
Details — name the rule, pick a Rule type: Resource threshold (CPU/memory/disk percentages), Node offline (offline threshold in minutes), or Server crashed; choose a Target (Global, Node, or Server).
-
Conditions — set the thresholds the rule type exposes.
-
Notifications — add Email recipients, Webhook URLs, a Cooldown (minutes), and optionally Notify server owner.
-
Select Create rule. Incidents appear under Alert history; use Resolve or Resolve all once handled.
At minimum, page on: panel down, node unreachable > 5 min, disk > 85%, and a panel database backup older than expected. Certificate expiry is not something the panel watches — track it in your host monitoring. Prune stale rules quarterly; they train people to ignore the channel.
Logs that matter
Section titled “Logs that matter”- Backend container logs — API errors, auth failures, background jobs:
docker compose logs backend. - Agent logs on each node — lifecycle actions, update stages, connectivity:
journalctl -u catalyst-agent. - System errors view — persisted application errors worth triaging regularly.
When something fires
Section titled “When something fires”Go to troubleshooting with the alert text, the affected host, and a timestamp. Those three facts solve half of all incidents.
Related
Section titled “Related”- Per-server resource graphs: server metrics.
- Backup health and retention: backups.
- Node reachability and agent versions: nodes overview.
