Laravel
← Back to all checks

Availability

Uptime

We request your site every minute from several locations. It only counts as down once a second location confirms it, so a single network hiccup never wakes you up.

How it works

Every minute, we send a request to your monitor's URL from every enabled location at the same time. Each location follows redirects, measures the response time of every phase (DNS, connect, TLS, server, download) and applies your response rules.

A site is only reported down once at least two locations agree. When one location fails and the others succeed, the check shows a warning instead: that pattern is nearly always a network problem between that location and your server, not an outage.

While the site is down we keep checking every minute, and we record a downtime period from the first confirmed failure to the first success. The timings from your team's preferred location (or the primary server) feed the response time charts and the Performance check.

Settings

Change these on the Settings tab of the uptime report.

Setting Default What it does
Method GET The HTTP method of the request.
Headers — Extra request headers, one Name: value per line, e.g. Authorization: Bearer ….
Body — The request body. Valid JSON is sent as JSON, anything else as a form.
Timeout seconds 5 How long to wait for a response (up to 10).
Max redirects 5 How many redirects to follow before giving up (up to 20).
Final URL — The URL the redirects must end on, e.g. https://example.com/home.
Expected status 2* Accepted status codes, comma- or space-separated: 200, 2*, 2xx, 200, 301.
Must contain — Text the response body must include.
Must not contain — Text the response body must not include, e.g. Fatal error.
Response headers — Headers the response must have, one per line: Content-Type: application/json to match a value, or just X-Request-Id to require the header.
Assertions — Rules for a JSON response, one per line: path operator value, e.g. data.status == ok, data.queue < 100, data.error missing.
Interval minutes 1 How often to check, up to once a day (1440).
Alert after minutes 2 How long the site must be down before we alert you (up to 20).

Assertion operators are ==, !=, >, >=, <, <=, contains, not contains, exists and missing. A bare path must exist. Use Test against your URL on the Settings tab to try your rules before you save them.

Statuses

Status Meaning
OK Every location reached the site and the response passed your rules.
Warning One location failed while the others succeeded, or no location could be reached.
Failed At least two locations confirm the site is down: a connection error, a timeout, an unexpected status or a failed rule.

By default you are notified of failures only, so a blip from a single location never alerts you. You can snooze uptime notifications for a while from the Snooze tab, for example during a deploy.

Fixing common problems

  • Timeouts: the server took longer than the timeout to answer. Look for slow queries or exhausted workers. If the page is legitimately slow, raise the timeout.
  • Unexpected status: a 5xx points to a server error, so check your application and web server logs. A 403 often means a firewall or bot protection is blocking our locations; allow our IP addresses.
  • Connection refused or DNS errors: the web server is not running, or the domain no longer points to it. Check the DNS changes check.
  • Rule failures: the response text or JSON changed. Update the rule if the change is expected.