Skip to main content
Observer has two parts:
  • Observer Agent, a small process you run inside your network. It reads metrics from your existing observability stack and runs probes (Prometheus, HTTP, TCP, DNS, ICMP, TLS certificate, gRPC, WebSocket, database, OTLP, CloudWatch, Loki, Elasticsearch, host metrics and custom) and computes the status verdict locally.
  • Observer Cloud, the control plane. It receives status pushes from agents, runs SLO evaluation, persists data, and renders status pages, dashboards, and the API.

What crosses the network

The agent sends two things to Observer Cloud: readings with their verdict, and a health heartbeat about the agent itself every 30 seconds (agent version and build, uptime, the host name, queue depth, active source types, and the names of any custom probes; agents before 1.7.0 also sent their descriptions). Each reading is one row:
Credentials and raw query responses stay on the agent host: connection strings, tokens, and certificates are referenced by environment variable name and read locally, and the response bodies, result sets, and resolver answers behind a reading never leave the agent. Log forwarding is off by default (BROADCAST_LOGS=false). When you browse CloudWatch metrics in the console, the agent returns metric names and dimensions, no values. The cloud has no path back into your network; it cannot pull from your Prometheus or hit your endpoints directly. See Agent and cloud boundary for the full list of calls.

What runs where

Closed source cloud, open source agentObserver Cloud is a closed-source SaaS. The Observer Agent is open source: source at github.com/useobserver/agent, Apache-2.0 licensed.

Operational implications

  • The agent must run in a network segment that can reach your metric sources. The cloud cannot reach them on your behalf.
  • The agent’s own health is reported back to the cloud through heartbeats. The cloud surfaces a stalled agent as agent.offline.
  • The agent is stateless with respect to historical data: lost agents do not lose history, because all status pushes are persisted in the cloud.