Monitoring suite for Twingate, ZeroTier, IPFS, IPv6 ingress, BGP, and general network health across the FlatRacoon Network Stack.
Built with Phoenix LiveView for real-time updates and poly-observability-mcp for metrics collection.
Part of the FlatRacoon Network Stack.
┌─────────────────────────────────────────────────────────────┐
│ Network Dashboard │
│ (Phoenix LiveView) │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │ │
│ │ │Twingate │ │ZeroTier │ │ IPFS │ │ IPv6 │ │ │
│ │ │ Panel │ │ Panel │ │ Panel │ │ Panel │ │ │
│ │ └────┬────┘ └────┬────┘ └────┬────┘ └────┬────┘ │ │
│ │ │ │ │ │ │ │
│ │ ┌────▼───────────▼───────────▼───────────▼────┐ │ │
│ │ │ Real-Time Metrics Engine │ │ │
│ │ │ (GenServer + ETS) │ │ │
│ │ └────────────────────┬─────────────────────────┘ │ │
│ └───────────────────────┼─────────────────────────────┘ │
└──────────────────────────┼──────────────────────────────────┘
│
┌────────────┼────────────┐
│ │ │
┌────────▼────────┐ │ ┌────────▼────────┐
│ Prometheus │ │ │ Loki │
│ (metrics) │ │ │ (logs) │
└────────┬────────┘ │ └────────┬────────┘
│ │ │
└────────────┼────────────┘
│
┌───────────────────┼───────────────────┐
│ │ │
┌──────▼──────┐ ┌──────▼──────┐ ┌──────▼──────┐
│ Twingate │ │ ZeroTier │ │ IPFS │
│ Connector │ │ Agents │ │ Nodes │
└─────────────┘ └─────────────┘ └─────────────┘Phoenix LiveView dashboard - Real-time web interface
Prometheus integration - Metrics collection and alerting
Loki integration - Log aggregation and search
Grafana dashboards - Pre-built visualization templates
Alert manager - Notification routing
network-dashboard/
├── lib/
│ ├── network_dashboard/
│ │ ├── application.ex
│ │ ├── metrics/
│ │ │ ├── twingate.ex
│ │ │ ├── zerotier.ex
│ │ │ ├── ipfs.ex
│ │ │ ├── ipv6.ex
│ │ │ └── bgp.ex
│ │ └── alerts/
│ └── network_dashboard_web/
│ ├── live/
│ │ ├── dashboard_live.ex
│ │ ├── twingate_live.ex
│ │ ├── zerotier_live.ex
│ │ ├── ipfs_live.ex
│ │ └── network_live.ex
│ └── components/
├── assets/
│ └── js/ # ReScript compiled JS
├── grafana/
│ ├── dashboards/
│ │ ├── overview.json
│ │ ├── twingate.json
│ │ ├── zerotier.json
│ │ └── ipfs.json
│ └── provisioning/
├── prometheus/
│ ├── rules/
│ └── alerts/
├── configs/
│ ├── dashboard.ncl
│ ├── alerts.ncl
│ └── retention.ncl
├── mix.exs
├── Justfile
├── README.adoc
├── STATE.scm
├── META.scm
└── ECOSYSTEM.scmTotal connected nodes
Active Twingate sessions
ZeroTier mesh health
IPFS cluster status
IPv6 traffic volume
BGP session states
Active connections
Authentication events
Bandwidth usage
Access policy violations
Connector health
Peer count and status
Network latency matrix
NAT traversal success rate
Bandwidth per node
Route convergence time
Swarm peer count
Pinned content size
Gateway request rate
Bandwidth in/out
Block store metrics
| Input | Description | Source |
|---|---|---|
Prometheus endpoint | Metrics scrape target | poly-observability-mcp |
Loki endpoint | Log aggregation target | poly-observability-mcp |
Module health endpoints | Per-module health checks | Each FlatRacoon module |
Alert rules | Alerting configuration | configs/alerts.ncl |
| Output | Description |
|---|---|
Web dashboard | Real-time Phoenix LiveView UI |
Grafana dashboards | Pre-configured visualizations |
Prometheus alerts | Configured alerting rules |
API endpoints | Programmatic access to metrics |
All modules - Metrics collection endpoints
poly-observability-mcp - Prometheus/Loki integration
flatracoon-netstack orchestrator - Health status feed
{
"module": "network-dashboard",
"version": "0.1.0",
"layer": "observability",
"requires": ["prometheus", "loki", "elixir"],
"provides": ["dashboard", "alerting", "visualization"],
"config_schema": "configs/schema.ncl",
"health_endpoint": "/health",
"metrics_endpoint": "/metrics"
}# 1. Install dependencies
just deps
# 2. Configure endpoints
cp configs/dashboard.ncl.example configs/dashboard.ncl
# Edit configs/dashboard.ncl# 3. Start dashboard
just server
# 4. Access at http://localhost:4000# 5. Import Grafana dashboards
just grafana-import| Component | Technology |
|---|---|
Backend | Elixir / Phoenix 1.7+ |
Frontend | Phoenix LiveView + ReScript |
Real-time | Phoenix Channels / WebSocket |
Metrics | Prometheus / VictoriaMetrics |
Logs | Loki / Grafana |
Visualization | Grafana dashboards |
Configuration | Nickel |