Skip to content

Dashboard

The Dashboard is the first screen you see when opening CritterWatch. It provides a system-wide summary of all monitored services and surfaces critical issues that need immediate attention.

CritterWatch Dashboard — system overview with health summary cards, top busiest and top DLQ services, throughput, and a recent-events feed

The header reads System Overview and carries four quick-action buttons — View All Services, View Dead Letters, View Projections, and Alert Configuration — for jumping straight to the screen you need. On a fresh install with nothing connected yet, the Dashboard shows a "No services connected yet" empty state with a get-started link.

Summary Cards

A row of four cards shows fleet-wide aggregates:

CardDescription
Total ServicesNumber of monitored services, with green/amber/red pills counting services by worst health status
Global Msgs/hrSummed current throughput rate across all connected services — an instantaneous rate, not a 24-hour total. A sparkline beneath it plots the past 24h of throughput (it fills in as history accrues)
Active AlertsCount of raised and elevated alerts, split by severity; click through to the Timeline
DLQ TotalTotal unresolved dead-letter messages across all queues, plus a current DLQ/hr rate

Cards with non-zero warning or critical values are highlighted to draw attention.

Top services + throughput

Below the cards, two tables call out the services that need attention:

  • Top 5 Busiest Services — ranked by current messages/hour.
  • Top 5 DLQ Services — ranked by unresolved dead letters.

A System Throughput sparkline (one bar per service) gives a quick visual of where the load sits. There is no per-service tile grid — use the Services list for the full roster, or click any row here to drill in.

Recent Events

A condensed view of the Timeline shows the 10 most-recent notable events — service registrations, node add/remove, projection lifecycle actions, and active alerts. The feed is filtered to an allow-list of operator-relevant event types (routine info chatter and resolved alerts are dropped).

Liveness, honestly: this tile is populated from a one-shot load when the console first connects, plus a seed of any currently-active alerts. It is not a continuously-updating live ticker today — new node-join/leave events won't stream in until the page reloads. (Wiring the live push is tracked in issue #636.)

Filtering

The global service filter is hidden on the Dashboard — it is a fleet-wide overview with no single-service context. To focus on one service, open it from the Services list.

Auto-Refresh

The Dashboard receives its data via SignalR; there is no manual refresh control. The summary cards and top-services tables update as service summaries arrive, and DLQ counts re-query periodically. (See the Recent Events note above for the one tile that is not yet live.)

Free for read-only monitoring. A commercial license is required for administrative actions and the MCP server.