Overview
Real-time observability and automated health checks for NATS infrastructure.
Insights gives operations teams a unified view of their entire NATS deployment (servers, clusters, connections, JetStream assets, accounts, and configurations) with full historical state and automated checks.
The Problem
When something goes wrong in a NATS deployment, operators piece together information from multiple CLI commands, log files, and metric dashboards. There is no unified view, no historical state, and no structured way to follow a symptom to its root cause.
The specific gaps in existing tooling:
- Fragmented visibility: diagnosis requires jumping between CLI commands, dashboards, and log files with no unified view
- No historical data: only the current state is available, making retrospective analysis impossible
- Limited granularity: existing metrics expose server-level numbers but lack entity-level detail about streams, consumers, accounts, and their configurations
- No entity traversal: there is no way to naturally follow relationships from a server to its streams, consumers, accounts, and connections
- No codified operational knowledge: operators see alerts but lack structured remediation guidance, leading to escalation loops
How Insights Works
Insights takes a different approach: index everything first, then layer monitoring, analysis, and checks on top.
Rather than starting with coarse metrics and adding labels, Insights captures full entity data (every server, cluster, connection, JetStream asset, account, and configuration) at regular intervals called epochs. Metrics are derived from this rich data, not the other way around.
This means:
- Every entity has full metadata: not just a name and a number, but all configuration, state, and relationships
- Every entity has history: you can see what the system looked like at any point in time
- Every entity has relationships: you can traverse the graph from any entry point to understand context
What You Can Do
Inventory and Discovery
See all entities across your NATS deployment: servers, clusters, super clusters, connections, JetStream assets (streams, KV stores, object stores, consumers), accounts, subject subscriptions, and configurations. Insights provides a system-wide view that spans all accounts and clusters.
Problem Diagnosis
Start from any entry point, such as a server, a slow consumer, or a spike in API errors, and traverse the entity graph to understand what happened and why. Everything is linked: servers to streams, streams to consumers, consumers to accounts, accounts to connections.
Automated Checks
Over 140 automated checks run every epoch (operational checks against that epoch, optimization checks over a trailing lookback window) and are organized into six categories covering health, performance, errors, resource saturation, configuration consistency, and change detection. Each check includes remediation guidance. See Checks for details.
Retrospective Analysis
Travel back in time to investigate incidents. Compare the current state to any previous epoch. Understand what changed: new connections, stream rebalancing, server restarts, configuration updates. Every epoch is queryable.
Multiple Systems and Sites
One Insights node can monitor several NATS systems, each with its own database, check thresholds, and pages. To monitor systems at several sites, run Insights at each site and see every site in one web UI. A site that can't keep a database can run a collector instead, and a central node stores and checks its data. See the Deployment Guide and Federated Deployment.
System Optimization
Detect idle resources, flag misconfigurations, identify imbalanced placement, find wasted JetStream reservations, and surface cost-saving opportunities that accumulate silently over time.
Next Steps
- Installation: download and install Insights
- Quick Start: run Insights with the built-in simulator
- Architecture: understand how the system works
- Deployment Guide: production deployment options