Yagra documentation
Yagra is an open-source network monitoring system (NMS) that watches network devices and servers over ICMP, SNMP, and API calls — tracking liveness, performance, and thresholds, and raising alerts on anomalies. It ships as Docker containers, with a Rust backend and a React WebUI, and is architected from the start for tens of thousands of nodes and distributed polling: a single-node stack scales out to remote-site pollers and highly available cores by configuration, not rewrite.
QuickstartBring up the full stack with one command and log in.
InstallationEvery supported deployment — single-node and distributed, Docker and native.
Configuration referenceEvery environment variable, default, and clamp.
API guideAuthentication, conventions, and the generated REST reference.
MCP for AI clientsLet an AI assistant query live monitoring state.
What Yagra does
Section titled “What Yagra does”- Active monitoring — ICMP liveness, SNMP v2c/v3 (including GETBULK per-interface collection), HTTP/URL checks with TLS-expiry tracking, DNS resolution monitors, and Cisco Meraki devices via the read-only Dashboard API.
- Discovery & classification — IP-range discovery, automatic device classification, editable device profiles, collection templates, and a curated MIB/OID catalog.
- Alert quality — dwell-time hysteresis, flapping detection, dependency suppression with root-cause roll-up, maintenance windows, and notification channels including PagerDuty and Jira Service Management with a native fire/resolve lifecycle.
- Passive events — syslog, SNMP traps (v1/v2c + informs, decoded to human-readable names), and inbound webhooks, matched against event rules and searchable at scale.
- Traffic flow — NetFlow v5/v9, IPFIX, and sFlow v5 into a dedicated flow store, with top talkers, ports, protocols, AS conversations, and offline IP→ASN enrichment.
- Forwarding — a filtered tee that relays received syslog, traps, and flow exports byte-for-byte to a SIEM or collector over UDP/TCP/TLS, or streams normalized rows into BigQuery, from one egress point.
- Dashboards & reports — widget-based dashboards (shared and per-user), a topology map with dependency states, and scheduled reports with HTML/CSV/PDF export.
- Troubleshoot analyses & AI RCA — on-demand analyses across metrics, events, and flows (anomaly, correlation, capacity, flap, scan detection, and more), plus an opt-in AI root-cause explanation grounded in the incident’s evidence.
- Distributed polling — poller pools at remote sites, assigned by location affinity and failed over automatically, with store-and-forward buffering that rides out network partitions without losing metric history.
- High availability — multiple core instances with automatic leader election and failover, and sessions that survive a failover.
- Users, roles & SSO — Viewer/Operator/Admin roles, single sign-on via OpenID Connect alongside local accounts, and an audit log of who changed what.
- MCP for AI clients — an opt-in tool surface at
/mcpso an AI assistant can query status, metrics, flows, and events, run Troubleshoot analyses, and perform a few audited write actions. It never configures network devices.
How these docs are organized
Section titled “How these docs are organized”- Start here — the quickstart, the installation guide, and the core concepts behind the design.
- Deploy & operate — production topics: high availability, observability, and security.
- Features — one page per capability, from monitoring and alerting to traffic flow and Troubleshoot.
- Integrations & API — the REST API guide, the generated endpoint reference, and the MCP server.
- Reference — look-up material: configuration, ports & firewall, and the license.
Versions
Section titled “Versions”These docs track the latest release of Yagra. Behavior that changed between versions is recorded in the release notes — see the changelog for where to find them and how container images are tagged.