Stars
Forks
Watchers
Developer links
Vigil
Vigil monitors your entire distributed infrastructure and generates a public status page from a single Rust binary small enough to run on a Raspberry Pi, consuming minimal CPU and memory while providing crash-free reliability. Four distinct monitoring modes cover every topology: poll probes check HTTP, TCP, SSH, and ICMP endpoints for reachability with configurable intervals and thresholds; push probes receive health reports from Vigil Reporter libraries embedded in your application code across Node.js, Python, Golang, Rust, TypeScript, Dart, and C#; local probes delegate monitoring to Vigil Local slave daemons running behind firewalls on separate LANs; and script probes execute custom shell commands for specialized health checks. Each monitored service transitions through healthy, sick, and dead states based on consecutive probe failures, with configurable thresholds controlling state transition sensitivity. When services change state, Vigil dispatches notifications through twelve alert channels including Slack, Email, Twilio SMS, Telegram, Pushover, Gotify, XMPP, Matrix, Zulip, Cisco Webex, and generic webhooks. The generated status page displays service groups organized by category with real-time replica status, system load metrics from reporter probes, and a maintenance announcement system for communicating planned downtime through the Manager HTTP API. Configuration uses a single TOML file defining all probes, services, and notification channels with no database dependency. Docker deployment pulls the official image with volume-mounted configuration. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. MPL-2.0 licensed.
Benefits
- Rust-Built Lightweight Status Page
- Compiled Rust binary runs with minimal CPU and memory footprint, providing crash-free status page hosting and infrastructure monitoring suitable for resource-constrained servers and edge deployments.
- Four Monitoring Probe Modes
- Poll probes check HTTP, TCP, SSH, and ICMP endpoints, push probes receive application health via Reporter libraries, local probes monitor behind-firewall services, and script probes execute custom health checks.
- Twelve Notification Alert Channels
- State change alerts dispatch through Slack, Email, Twilio SMS, Telegram, Pushover, Gotify, XMPP, Matrix, Zulip, Cisco Webex, and generic webhooks with configurable notification policies.
- Multi-Language Reporter Libraries
- Vigil Reporter SDKs for Node.js, Python, Golang, Rust, TypeScript, Dart, and C# embed push-based health reporting in your application code with CPU and RAM system load metrics.
Features
- Public Status Page
- Customizable HTML status page displaying service groups with real-time replica health indicators, system load metrics, and color-coded healthy, sick, and dead state visualization.
- Maintenance Announcements
- Manager HTTP API publishes planned maintenance notices displayed on the status page, communicating scheduled downtime windows to users without code deployment.
- Vigil Local Daemon
- Slave daemon monitors services behind firewalls on separate LANs, reporting health status back to the Vigil master server over authenticated HTTP connections.
- MCP Server for AI Agents
- Built-in Model Context Protocol server enables AI agents to query infrastructure health status programmatically for automated incident response and monitoring workflows.
- TOML Configuration
- Single TOML file defines all monitored services, probe intervals, state transition thresholds, and notification channel credentials with no database dependency.