LatencyWatch
Deploy Agents on your servers. Collect latency data via Kafka. Store and query in ClickHouse. Manage everything from a single dashboard.
Architecture Components
Agent (Rust)
TCP packet capture via libpcap, ICMP probing, local buffering, Kafka producer, and gRPC reverse tunnel client.
Analytics (Rust)
Kafka consumer with IP geolocation enrichment (IPInfo + IP2Location, LRU cache) and ClickHouse batch writer.
Tunnel Gateway (Rust)
Tokio + tonic based gRPC reverse tunnel for Agent management with heartbeat detection.
Backend (Go)
GIN-based REST API for node management, ClickHouse query proxy with JWT auth and RBAC.
Frontend (React)
Vite + React management interface with TanStack Router and data visualization.
Storage
Kafka for stream buffering, ClickHouse for time-series data, MySQL for metadata.