Rippler docs

Website monitors

How Rippler checks a URL, what counts as down, and how to let the checks through a firewall.

A cron monitor waits for your job to ping it. A website monitor works the other way: Rippler requests a URL on an interval and tells you when it stops answering, and again when it comes back.

Create one from New monitor → Website in the app. Website monitors cannot be created through the API or the CLI yet.

What a check does

Each check is one GET request to the URL. Rippler reads the response status and stops there. It never downloads the body.

  • Redirects are followed, up to 5. The final response is the one judged.
  • Response time is the time from the start of the request to the response headers, including DNS, connecting and the TLS handshake. It is shown in the log next to every check.
  • Every check opens a new connection. A reused connection would skip DNS and TLS, and hide a broken certificate or DNS record from the check.

What counts as down

A check fails when any of these happen:

  • The status does not match the expected status. The default is 2xx, which means any status from 200 to 299.
  • No response arrives within the timeout. The default is 10 seconds and the maximum is 30.
  • DNS lookup fails, the connection is refused or reset, or the TLS certificate is expired, self-signed or issued for a different hostname.
  • The URL redirects more than 5 times, or redirects to something that is not http or https.

The expected status is a comma-separated list of codes and classes, such as 2xx,401. Use it for an endpoint whose healthy answer is not a 2xx, like an API that returns 401 without credentials. If the list includes a 3xx code or class, Rippler treats that redirect as the answer and does not follow it.

Retries and alerts

Every failed check is retried once, about 5 seconds later, before it counts. Checks come from a single location for now, so without the retry, a brief network problem on our side would look exactly like your site being down. Only a check that fails twice counts as a failure. The log still shows the first failure on a check that passed on the retry.

A failed check sets the monitor to down. A passing check sets it to up. Website monitors are never grace ("Late") or started ("Running"). Those statuses are for cron jobs.

Failure tolerance counts failed checks. With a tolerance of 3, you are alerted after three failed checks in a row. Down alerts give the reason, such as HTTP 502 or Timed out after 10s. Everything else in Alerts works the same as for a cron monitor.

Interval

A website is checked every 5 minutes by default. The shortest interval is 1 minute. With a 1 minute interval you hear about an outage within about a minute, plus the retry.

How long checks are kept

Every check is kept in the monitor's log: the last 7 days on Indie and 6 months on Business. See how long logs are kept.

Addresses Rippler will not check

Rippler does not request loopback, private, link-local or other non-public addresses, such as localhost, 10.0.0.0/8, 192.168.0.0/16 or 169.254.169.254. A URL that points at one is refused when you create the monitor. The address is checked again on every request and on every redirect, because DNS can change after the monitor is saved. A check that reaches one fails with Address not allowed.

Allowing the checks through a firewall

If your site sits behind a firewall, a WAF or bot protection, allow requests that match these:

WhatValue
User agentRippler/1.0 (+https://rippler.io)
Source IP173.255.232.188

That IP is where checks come from currently: a single region, Newark (US East). More regions may be added later, and this page will list their addresses.

On this page