What private probes are
A private probe is a Docker-based agent you run on your own infrastructure. Thepulseguard/probe image packages a minimal Node.js runtime and the same check primitives (@pulseguard/core) used by PulseGuard’s global edge network. Once the container is running, it registers itself with PulseGuard, receives check assignments, executes them locally, and streams results back — all without you configuring any additional servers, load balancers, or ingress rules.
Why you need them
PulseGuard’s public probes can only reach services that are accessible from the public internet. Private probes fill the gap for everything that isn’t:- Internal APIs and microservices that live behind a corporate firewall or VPN
- Staging and QA environments that are intentionally kept off the public internet
- Databases and TCP services on private subnets you want to verify are reachable from within the network
- On-premises hosts in air-gapped or restricted environments where exposing an inbound port is not possible
How they work
Private probes use a poll-based architecture. The probe container initiates all connections outbound — it never listens on any port. Here is the lifecycle for each check cycle:- Register — on startup, the probe authenticates with PulseGuard using your probe token and registers itself against your account.
- Poll — on every poll interval, the probe requests a batch of pending check jobs assigned to its region.
- Execute — the probe runs each check locally (HTTP/HTTPS requests or TCP connection attempts) and collects the results.
- Report — results are sent back to PulseGuard in a single batch so they appear in your monitor history immediately.
- Heartbeat — independently of the poll loop, the probe sends a periodic signal to PulseGuard so your dashboard can confirm the agent is alive.
worker.pulseguard.io, you do not need to open any inbound firewall rules or configure NAT port-forwarding.
Supported check types
A private probe can perform the following checks against targets inside your network:SSL, DNS, Browser (Puppeteer), WebSocket, BGP, and other advanced monitor types are executed by PulseGuard’s edge workers and are not currently dispatched to private probes.
Probe registration
When the probe container starts, it reads yourPULSEGUARD_PROBE_TOKEN and calls the PulseGuard worker to register itself. Registration records the probe’s region label and links it to your account. From that point on, any monitor you configure to use your private probe’s region label will have its check jobs dispatched to that container on the next poll interval.
You can register multiple probes under the same account — for example, one per data-centre region or one per isolated network segment. Each probe appears separately in your dashboard with its own connectivity status and last-heartbeat timestamp.
Probe tiers
The number of private probes you can register depends on your plan:Upgrading your plan is available from Dashboard → Settings → Billing.
Next steps
Ready to deploy your first probe? Follow the step-by-step Docker setup guide.Deploy a Private Probe with Docker
Run the PulseGuard probe container in your network in under 5 minutes.