Docs menu

Monitoring

Monitor uptime

An uptime monitor requests a URL every 30 seconds to 1 hour. 2xx and 3xx are up; two failed checks in a row are down and alert the team.

Updated View as Markdown

On this page

An uptime monitor requests one public URL on a fixed interval and alerts the team when it stops answering. It needs no code in your app.

Requirements

  • A project. Every team member can manage its monitors.
  • A public http:// or https:// URL of at most 2,000 characters, without a username or password. Loopback, private and other non-public addresses are refused.
  • At most 100 monitors per project, 100 per team, and 300 over all the teams one owner owns.

Add a monitor

  1. Open the project and go to Uptime in the sidebar, or press ⌘ K → Add uptime monitor.
  2. Under Add monitor, enter the URL, for example https://example.com/up.
  3. Optional: a Name (default: the host).
  4. Pick Check every: 30 seconds, 1 minute (the default), 5 minutes, 10 minutes, 30 minutes or 1 hour.
  5. Click Add monitor.

The first check runs within seconds. Each monitor also checks its SSL certificate, domain and DNS.

Check that it works

The monitor's page shows Status (Pending until the first check, then Up or Down), the uptime in the selected range, the average and p95 response time, and the latest 20 checks with their HTTP status, duration and error (Show all lists the latest 100).

How a check decides up or down

RuleValue
UpThe final response, after redirects, has status 2xx or 3xx.
Failed checkAny other status, no response headers within 10 seconds, a DNS, connection or TLS error, or more than 5 redirects.
Down2 failed checks in a row.
RetryAfter a first failure, Lampwick checks again within 15 seconds instead of waiting a full interval.
Back up1 successful check.
MethodGET
User-Agentlampwick-uptime/<version>

A single dropped request alerts no one; an outage is noticed within one interval plus about 15 seconds.

Pick the right URL

Monitor a health endpoint, such as Laravel's /up route, rather than a heavy page. If a firewall, WAF or bot protection (Cloudflare, for example) blocks automated requests, allow the User-Agent lampwick-uptime, or every check fails with HTTP 403.

Change, pause or delete a monitor

On the monitor's page:

  • Settings → Monitor: change the URL, name or interval. A new URL starts over: status Pending, checked at once.
  • Alerts → Mute alerts for everyone: the checks keep running, but no one gets alerts for this monitor.
  • Danger zone → Pause checks: no checks, host checks or crawl. Resume checks starts over like a new URL.
  • Danger zone → Delete monitor: deletes the monitor and its check history.

Check history follows the retention of your other records.

API

OperationWhat it does
listMonitorsMonitors with uptime, response times and latest checks.
createMonitorBody: url, name, interval_secs (30 to 3600, any value).
getMonitorOne monitor with its checks, DNS changes and charts.
updateMonitorurl, name, interval_secs, paused, notify, and the host check switches.
deleteMonitorDeletes the monitor and its checks.

Tokens and conventions: API.

Troubleshooting

What you seeCause and fix
HTTP 403 Forbidden on every check, while the site works in your browserA WAF or bot protection blocks the check. Allow the User-Agent lampwick-uptime, or monitor a health endpoint that it doesn't filter.
timed out after 10 sThe server took longer than 10 seconds to send response headers. Monitor a lighter endpoint, or find what makes it slow.
connection failed: …DNS, the connection or TLS failed; the rest of the message says why. An expired or invalid certificate shows here too.
more than 5 redirectsThe URL redirects in a loop or through too many hops. Monitor the final URL.
address is not publicThe URL points to a private or loopback address. Lampwick only checks public addresses.
this team already has the maximum of 100 uptime monitorsDelete monitors you no longer need, in any project of the team.

To show your monitors to customers, create a status page.