Know before
your users do.
Sentinel watches your APIs, databases and critical flows around the clock — and judges them with static rules, sandboxed JavaScript, or an LLM. Catch the outage, page the right people, and prove your uptime.
Free tier forever · No credit card · 60-second setup
Trusted by teams that can’t afford downtime
Three ways to decide what “healthy” means
Every other monitor checks if a request returns 200. Sentinel lets you validate the substance of a response — declaratively, in code, or with a model that understands intent.
Static assertions
Declarative & instant
Compose rules without code. Assert on status code, response time, headers, JSON paths, row counts, exit codes and stdout — combined with AND/OR.
statusCode eq 200 responseTimeMs lt 500 jsonPath "$.status" eq "ok"
Sandboxed JavaScript
Full control, safely
When rules aren’t enough, write a validate(result) function. It runs in an isolated-vm sandbox with no IO and capped memory and time — your logic, our guardrails.
function validate(r) {
return { pass: r.body.length > 0 }
}LLM validation
Judge intent, not just bytes
Describe what a healthy result looks like in plain English. Claude or OpenAI returns a structured pass/fail verdict with reasoning — fail-open if the provider blips.
“The page lists at least 3 products and shows no error banner.”
Monitor the whole stack, not just the front door
Your users feel a slow query as much as a 500. Sentinel checks the endpoints, the databases behind them, and the business-critical flows that tie it all together — including private infrastructure over SSH.
- Full phase timings: DNS, TCP, TLS handshake, time-to-first-byte.
- TLS certificate-expiry alerts before the padlock breaks.
- Reach private Postgres, Redis & hosts through an SSH tunnel.
- Per-monitor intervals, timeouts and degraded-latency thresholds.
HTTP
Method, headers, body, redirects. Full DNS / TCP / TLS / TTFB phase timings and TLS certificate-expiry tracking.
Postgres & Redis
Run a query or command against your databases — directly or tunnelled through SSH to private hosts.
Custom checks
An HTTP request or a shell command over SSH (exit code + stdout), validated by static rules, JS, or an LLM.
A complete observability platform
From the first failed request to the quarterly SLA report — and every alert, status page and backup in between.
Availability & SLA
Uptime across 24h / 7d / 30d / 90d, SLA objectives with error budgets, and automatic breach detection.
Response-time insight
p50 / p95 / p99 latency with DNS, TCP, TLS and TTFB broken out, so you see where the milliseconds go.
Incidents & alerts
Failures open incidents automatically and notify your team over Email, Webhook, or Slack — and auto-resolve on recovery.
Status pages & embeds
Public status pages, iframe widgets, and SVG uptime badges for your README — share live status anywhere.
Backups over SSH → S3
Scheduled Postgres & Redis dumps stream to S3 with checksums and retention. Restores are guarded and support dry-runs.
REST API & API keys
Pull monitors, results, availability, incidents and SLAs into your own dashboards with scoped, rate-limited keys.
Public status pages your customers will actually trust
Turn live monitoring data into a branded status page in one click. Embed a widget on your app, drop an uptime badge in your README, or pull the raw numbers through the API.
- Hosted status page at your own slug, light & dark aware.
- Embeddable iframe widget with origin allow-listing.
- SVG badges for 30-day uptime, perfect for docs & READMEs.
Built multi-tenant and secure from day one
Every organization is isolated. Stored credentials — database passwords, SSH keys, API tokens — are encrypted at rest with a key derived from your session secret. API keys are scoped and rate-limited; restores are guarded against overwriting your source.
Start monitoring in minutes.
Free to start. No credit card. Your first monitor is live before your coffee’s cold.