Skip to content

Multi-region uptime monitoring

Downtime confirmed by quorum. Alerts that actually ring.

Heimdall checks your sites and APIs from three regions (Istanbul, Stockholm and Frankfurt) and opens an incident only when a quorum of them agrees. Then it texts and calls whoever is on call from its own GSM gateways, and a one-line reply acknowledges it.

Free includes 10 monitors, 3-region quorum, a status page and 10 SMS + 3 calls a month. No credit card required.

regions vote on every check
3
shortest check interval, on Business
15 s
reply to the SMS to take it
ACK
status pages that never go down with you
CDN

Multi-region quorum

One region's network blip never pages anyone

Every monitor runs from three regions: Istanbul, Stockholm and Frankfurt. A region only counts as failing after consecutive failed checks, and the monitor goes down only when the failing regions reach the quorum.

  • Per-region fail and recovery thresholds, 2 consecutive results by default
  • Hysteresis and flap detection stop incidents opening and closing on a wobbly link
  • A probe that reports itself degraded is excluded instead of voting “down”
  • Conditions on status, body, latency, TLS expiry and DNS, not just “is it 200”
api.example.com/healthdown when failing regions ≥ quorum
  • ist503failing
  • stc503failing
  • fratimeoutfailing

Quorum 3/3 reached → INC-0142 opened

Same monitor, last Tuesday
  • isttimeoutfailing
  • stc200 · 184 mshealthy
  • fra200 · 231 mshealthy

1/3 failing → degraded, nobody paged

SMS & phone calls

Real SMS and phone calls. Acknowledged with a reply.

Alerts leave Heimdall's own GSM gateways as plain SMS and voice calls. No app to install and no push notification to miss: it works on any phone. Reply with the 6-digit code and escalation stops.

  • ACK 482193 acknowledges, SNOOZE 482193 30 pauses escalation for 30 minutes
  • A phone call follows if nobody acknowledges in time
  • Only +90 numbers confirmed by their owner receive alerts: one SMS with a link, nothing else before that
  • Past your monthly quota? Fair use moves extra alerts to e-mail or Telegram, and the incident timeline says so
Heimdall (gw-ist-1)+90 5XX XXX XX XX
  1. Today 14:22
  2. [DOWN] api.example.com/health HTTP 503, 3/3 regions INC-0142 Reply: ACK 482193 / SNOOZE 482193 30
  3. 14:27 · Missed call: Heimdall
  4. ACK 482193
  5. ✓ INC-0142 acknowledged. Escalation stopped.
  6. 14:51
  7. [UP] api.example.com/health 3/3 regions OK, down 29 min
Alert SMS as it arrives on the on-call phone. Alert texts are always in English.

Status pages

Status pages that don’t depend on your infrastructure

Status pages are built as static HTML and served from a CDN. They never call Heimdall when someone opens them, so they keep working even during the outage they are reporting.

  • Components mapped to monitors, with 90-day uptime bars
  • Incident updates and scheduled maintenance windows
  • Your logo and brand colour, in English and Turkish
  • E-mail subscriptions for your customers
Acme Statusstatus.heimdall.warewave.tech/acme
Partial outagePublic API is returning errors. All other systems are operational.
ComponentsLast 90 days
WebsiteOperational
99.99% uptime
Public APIPartial outage
99.71% uptime
DashboardOperational
100% uptime
PaymentsOperational
99.98% uptime

Escalation & on-call

Escalate until a human answers

Weekly on-call rotations decide who is primary and who is secondary. Escalation policies decide what happens, and when, if nobody acknowledges.

  • Primary and secondary resolve to real people at alert time
  • Quiet hours per person, never applied to critical incidents
  • Snooze pauses escalation for a set number of minutes
  • On-call rotations and escalation policies come with Team and Business

Escalation policy · Production

  1. 1SMS → primary on-callas soon as the incident opens0 min
  2. 2Phone call → primary on-callif not acknowledged+5 min
  3. 3SMS + call → secondary on-callprimary still silent+10 min
  4. 4SMS to the whole teamrepeats every 15 minutes+20 min

Acknowledge by SMS, from the dashboard or through the API, and escalation stops for everyone.

Private locations

Monitor from inside your own network

Run the heimdall-probe agent in your data centre, office or VPC. It connects outbound only, picks up the monitors assigned to its location and votes in the quorum like any public region.

  • Check internal services that are not reachable from the internet
  • Outbound-only connection: no inbound firewall rules, no VPN
  • A single static binary for Linux amd64 and arm64
  • Included in Team (1) and Business (5); add more as an add-on
Run a private probe
$ export HEIMDALL_PROBE_TOKEN=hpt_4c1e…
$ heimdall-probe
level=INFO msg="heimdall-probe started" mode=private server=https://heimdall.warewave.tech
level=INFO msg="monitor configs loaded" region=prv-7k2m9x4q-office-ist scheduled=12

Integrations

Alerts where your team already is

Mix channels per escalation step: chat for the first nudge, a phone call when it matters.

  • E-mail

    Every plan. Incident opened, acknowledged and resolved.

  • Slack

    Pro and up. Channel alerts with a link to the incident.

  • Webhook

    Pro and up. Signed JSON POST (HMAC-SHA256) to your endpoint.

  • Telegram

    Every plan. Bot messages to a chat or group.

  • SMS

    Every plan, within a monthly quota. Acknowledge by reply.

  • Phone call

    Every plan. A voice call when a text is not enough.

Start monitoring in two minutes

Free includes 10 monitors and 10 SMS + 3 calls a month. Try Team free for 14 days when you need on-call, private probes and faster checks.