Skip to main content

Snitcher

Snitcher is a self-hosted, multi-location uptime monitoring platform. You run it on your own infrastructure, point it at the services you care about, and watch their health from one or many vantage points — without paying per-location SaaS fees or opening inbound firewall ports.

Why Snitcher

  • Target network-restricted services. Internal APIs, databases, and back-office apps often sit behind a firewall with no inbound access. Snitcher places a lightweight Scout agent inside that network. The Scout dials out to the Snitcher server and streams results back — you never open an inbound port or expose the service to the internet.
  • Geo-distributed checks, self-hosted. Deploy Scouts across regions, sites, or clouds and check the same service from every one. A resource can be assigned to multiple Scouts, giving a per-location breakdown of availability and latency — at no per-location cost.

Architecture

Snitcher has two moving parts plus a shared contract:

PartRole
Snitcher serverThe control plane and single source of truth: REST API, Angular/spartan-ng SPA, SignalR hubs, and a TimescaleDB (Postgres 18) history store. All configuration lives here.
Scout agentsSmall probes that run HTTP/HTTPS, TCP, and ICMP checks and report back. Scouts dial out over SignalR (NAT-friendly, no inbound rules) and converge to whatever config the server holds.
ProtocolA shared project defining the SignalR wire DTOs exchanged between server and Scouts.

Check history is stored in TimescaleDB and rolled up with continuous aggregates, so dashboards show current status, a heartbeat strip, and uptime percentages efficiently even over long windows.

How it fits together

  1. You define Resources (targets) and settings in the Snitcher server.
  2. You deploy one or more Scouts; each connects outbound to the server.
  3. The server pushes configuration down; the Scouts run the checks on schedule.
  4. Scouts stream results back; the server records them and derives each resource's status (Up / Down / Degraded / Unknown) across all online Scouts.
  5. The dashboard and alerting react in real time.

Head to Getting Started to bring the stack up, or Core Concepts for the building blocks.