Platform overview
AtherOps is a self-hosted observability platform. The entire surface lives behind a single hostname (app.atherops.com) with path-based routing handled by nginx.
Public endpoints
| Path | Purpose | Who calls it |
|---|---|---|
/ | Web dashboard (single-page app) | Browser users |
/api/* | Management API — auth, organisations, hosts, dashboards, alert rules | Browser dashboard, linux-agent (registration only) |
/query, /query/* | Read API for metrics, logs, and traces | Browser dashboard |
/ingest, /ingest/* | Write API for metrics, logs, and traces | linux-agent (and any compatible client) |
/healthz | Liveness probe | Uptime monitoring |
API and ingest paths aren't browsable — they expect HMAC-signed or JWT-authenticated requests. If you arrive at one of these in a browser you'll be redirected here.
Components
- Web dashboard — React + Vite. Reads from
/query/*, talks to/api/*for management. - Management API — Go service. JWT auth for browser sessions, install-token + HMAC for agent registration.
- Backend — Go service. Writes ingested data to ClickHouse (logs, traces) and VictoriaMetrics (metrics). Serves
/query/*. - linux-agent — Single binary that scrapes node_exporter, tails logs via Vector, and forwards to
/ingest/*. See the installation guide.
Getting started
- Run an agent: see the Linux agent quickstart.
- Open the dashboard: app.atherops.com.