Neon and PlanetScale database uptime checks

Neon (serverless Postgres) and PlanetScale (Vitess MySQL) scale to zero or pause compute to save money. That is great for side projects — and confusing for monitoring, because a database socket check is not what StillOnline runs. StillOnline probes HTTP URLs; your app’s /health decides whether a paused branch or connection timeout means “down” for customers.

Quick answer

Neon and PlanetScale are reached from your app, not by external HTTP monitors directly. Add GET /health on your app (optional SELECT 1 with a 1 s timeout); use liveness-only if compute suspend causes false alerts. Register the app HTTPS URL in StillOnline — Free, one URL, five-minute interval (pricing).

Lightweight SELECT vs full app health

ApproachProvesFalse positive risk
Liveness only ({ "status": "ok" })App process respondsDB can be down while check is green
SELECT 1 in /healthDB reachable from appNeon resume / cold start may slow probe
Separate /readyStrict dependency checkUse on Pro second URL if needed
Direct DB URL in StillOnlineNot supportedStillOnline is HTTP-only

Design details: health endpoint design.

Neon: compute pause and branches

Neon can suspend compute on free or dev tiers. First query after idle wakes the database — your /health with DB ping may exceed probe timeout once.

SituationRecommendation
Dev branch auto-suspendDo not monitor dev URL in production StillOnline project
Prod should never sleepConfigure Neon not to suspend prod; keep DB ping in /health
Accept wake-up latencyLiveness-only /health; page only on repeated failures

PlanetScale: branches and scale

PlanetScale deprecated free tier patterns evolve — monitor production branch through your app, not admin UI. Connection limits during deploys can fail SELECT 1 briefly; keep queries minimal.

Example app health (concept)

Your framework route runs:

SELECT 1;

with a 1 second timeout, returns 200 on success and 503 on failure. StillOnline registers:

curl -sS https://api.yourproduct.com/health

Not neon.tech or planetscale.com hostnames.

StillOnline setup

  1. Sign in.
  2. New project.
  3. HTTP check → app /health, GET, 200.
  4. Status page for API consumers — health quickstart.

Settings → Connect Telegram → StillOnline bot — Telegram guide.

FAQ

Can StillOnline monitor Neon or PlanetScale directly?

No. StillOnline checks public HTTP URLs. Database uptime is inferred through your app health route that uses the DB — health endpoint design.

Why does StillOnline alert when Neon was just paused?

A /health with DB ping may time out while compute resumes. Use liveness-only health, disable suspend on prod, or tune check interval — probe tuning.

Should I use /health or /ready for Neon?

Use /health for StillOnline’s primary check (liveness). Put strict DB checks on /ready if you add a second Pro check — health endpoint design.