Health Monitor
Track uptime and response times for your services and endpoints.
Overview
Health Monitor performs periodic HTTP/HTTPS checks against your services and endpoints, recording uptime and response time over time. Add any publicly or privately reachable URL, configure the check interval and success criteria, and the monitor builds a history of up/down events and response time trends. When an endpoint goes down, a notification fires through TotalApp's in-app notification system.
Configurable Intervals
Check every 1, 2, 5, 10, 15, 30, or 60 minutes. Shorter intervals catch outages faster but increase request volume on your endpoints.
Response Time Chart
A line chart shows average response time per check interval over the last 24 hours, 7 days, or 30 days. Spikes are immediately visible.
Uptime Timeline
A colour-coded timeline bar shows each check as a green (up) or red (down) segment. Hover a segment to see the exact timestamp and HTTP status code.
Downtime Alerts
When a check fails, TotalApp fires an in-app notification with the endpoint name, error reason, and time of failure. Alert delivery requires in-app notifications to be enabled in Settings.
Adding an Endpoint
- Click + Add Endpoint.
- Enter the URL (must start with
https://orhttp://). - Give the endpoint a Name for display in the dashboard (e.g. "Production API", "Staging Frontend").
- Select the Check Interval.
- Configure Success Criteria (see Check Configuration section).
- Optionally add an Alert delay — the number of consecutive failed checks before an alert fires (default 2, to avoid alerts from transient single-check failures).
- Click Save. The first check runs within the next interval period.
Dedicated Health Endpoints
For best results, add a dedicated /health or /status endpoint to your service that returns a lightweight JSON response (e.g. {"status":"ok"}). Checking a heavy page like the homepage adds latency and puts unnecessary load on your server.
Check Configuration
Success criteria determine when a check is counted as "up" versus "down".
| Criterion | Default | Description |
|---|---|---|
| HTTP Status Code | 200–299 | Any 2xx response is considered success. Override to check for a specific code (e.g. 200 only, or allow 301). |
| Timeout | 10 seconds | If the endpoint does not respond within this time, the check is counted as down (timeout error). Range: 1–30 seconds. |
| Response Body Contains | Not set | Optional string that must appear in the response body for the check to succeed. Useful for detecting maintenance pages that return 200 with "down for maintenance" in the body. |
| TLS Certificate Valid | Enabled | When enabled, the check fails if the TLS certificate is expired, self-signed, or the hostname does not match. Disable for self-signed internal certificates. |
| Follow Redirects | Enabled | When enabled, 3xx redirects are followed and the final response code is evaluated. When disabled, a redirect is treated as the response (e.g. a 301 would need to be in the allowed status codes). |
Status History
Click an endpoint card in the dashboard to open its detail view. The detail view shows:
- Current Status badge — Up (green) or Down (red) with time since last status change.
- Uptime Percentage — calculated over the last 7 days, 30 days, and 90 days.
- Uptime Timeline — colour-coded bar of individual check results. Click any segment to see the HTTP status code, response time, and any error message for that check.
- Response Time Chart — line chart with average, p95, and p99 response times per period.
- Incident Log — a table of all down events with start time, end time, duration, and the HTTP status code or error type that triggered the incident.
Alerts
Alerts fire when an endpoint transitions from Up to Down state (after the configured consecutive failure count). A recovery alert fires when the endpoint returns to Up state.
Alert Channels
- In-app notification — always enabled when in-app notifications are on in Settings → Notifications.
- Email — configure an SMTP server in Settings → Integrations to receive email alerts at one or more addresses per endpoint.
- Webhook — enter a webhook URL to receive a POST request with a JSON payload on each down and recovery event. Compatible with Slack incoming webhooks, PagerDuty, and any custom HTTP handler.
Reduce Alert Noise
Set the Alert delay to 2 or 3 consecutive failures before alerting. This prevents spurious alerts from single transient check failures (e.g. a brief network hiccup) while still catching real outages quickly.
Dashboard Summary
The Health Monitor main view shows all endpoints in a card grid. Each card displays:
- Endpoint name and URL
- Current status badge (Up / Down / Degraded — degraded means the endpoint is responding but response time exceeds the configured threshold)
- Last check timestamp and response time
- 7-day uptime percentage
- A mini uptime bar for the last 30 checks
Sort the card grid by name, uptime percentage, or last response time using the sort controls in the toolbar. Filter by status (All / Up / Down / Degraded) using the filter pills.