Distributed network monitoring platform built with Elixir and Phoenix LiveView. Designed for private network deployment within VPC/VPN environments.
Coordinator and worker nodes form a cluster via Erlang cookie-based distribution. Workers run across regions and execute monitoring jobs: HTTP response time and status, ICMP ping latency, DNS resolution performance, and TLS certificate validation and expiry. Results are pushed back to the coordinator via distributed GenServer calls and rendered in real time on a Phoenix LiveView dashboard.
The architecture is extensible. Adding a new monitoring type means implementing a monitor module and a metric struct with the Pushable protocol. The coordinator dispatches jobs to specific workers or broadcasts to all. Workers report results, the coordinator aggregates and persists to SQLite.
Each connection and monitoring task runs in its own supervised process. Telemetry events are emitted for all monitoring types and exposed via a Prometheus metrics endpoint.
Reference implementation requiring configuration and customisation before production use. TLS-secured clustering for public internet deployment is planned but not imminent.