Uptime Monitoring

Monitor your websites, APIs, servers, and services with real-time alerts and public status pages.

Introduction

The Uptime Monitoring feature provides comprehensive service availability monitoring. Track your infrastructure health, receive instant alerts when services go down, and keep your customers informed with public status pages.

Key Features

  • Multiple Monitor Types — HTTP, Ping, Port, SSL, DNS, and more
  • Real-time Alerts — Get notified instantly via email, Slack, or webhooks
  • Public Status Pages — Branded status pages with incident history
  • Incident Management — Track and communicate incidents
  • Maintenance Windows — Schedule maintenance without triggering alerts
  • Performance Charts — Historical response time and uptime graphs

Monitor Types

HTTP/HTTPS Monitor

Check website availability and response time by making HTTP/HTTPS requests.

  • URL to monitor
  • Expected HTTP status codes (default: 200-299)
  • Request method (GET, POST, PUT, etc.)
  • Custom headers and body
  • SSL certificate validation

Keyword Monitor

Verify specific text appears (or doesn't appear) on a webpage.

  • URL to check
  • Keyword to find or exclude
  • Match type: contains, equals, or regex
  • Case sensitivity option

Ping Monitor

Use ICMP ping to check if a host is reachable.

  • Hostname or IP address
  • Timeout duration
  • Packet count configuration

Port Monitor

Check if a specific TCP port is open and accepting connections.

  • Hostname or IP address
  • Port number
  • Connection timeout

Heartbeat/Cron Monitor

Passive monitoring that expects regular "pings" from your services.

  • Expected interval (how often service should ping)
  • Grace period before marking as down
  • Unique token for API endpoint
POST /api/v1/uptime/heartbeat/{token}

SSL Certificate Monitor

Monitor SSL certificate expiration dates and get warned before they expire.

  • Hostname to check
  • Port (default: 443)
  • Alert thresholds: 30, 14, or 7 days before expiration

DNS Monitor

Check DNS record resolution.

  • Domain to check
  • Record type (A, AAAA, CNAME, MX, TXT, etc.)
  • Expected value (optional)

Creating Monitors

  1. Navigate to Uptime Monitoring from the main navigation
  2. Click Create Monitor
  3. Select the monitor type
  4. Configure the settings (URL, interval, alerts, etc.)
  5. Save the monitor

The monitor will begin checking immediately after creation.

Check Intervals

Configure how frequently monitors check your services:

Interval Description
1 minute Real-time monitoring (Pro/Enterprise)
5 minutes Standard monitoring
15 minutes Basic monitoring
30 minutes Low-priority services

Alert System

Get notified immediately when your services go down or recover.

Alert Types

Type Description
Down Alert When a monitor detects a failure
Recovery Alert When a monitor comes back online
Degraded Alert When response time exceeds threshold
Reminder Alert Periodic reminders for ongoing incidents
Expiration Warning SSL or domain expiration approaching

Notification Channels

  • In-App — Real-time notifications via WebSocket
  • Email — Customizable email alerts
  • Slack — Rich formatted messages with action buttons
  • Discord — Embedded messages with status colors
  • Microsoft Teams — Adaptive card notifications
  • Custom Webhook — Send alerts to any URL

Alert Configuration

Configure alerts per monitor:

  • Choose which channels to notify
  • Set consecutive failures before alerting
  • Configure reminder intervals
  • Set quiet hours to avoid late-night alerts

Public Status Pages

Create branded status pages to keep your customers informed about service availability.

Features

  • Custom Branding — Logo, colors, and company information
  • Real-time Status — Live monitor status display
  • Uptime Graphs — Historical uptime percentage visualization
  • Incident History — Past incidents and resolutions
  • Maintenance Notices — Scheduled maintenance windows
  • Email Subscriptions — Let customers subscribe for updates
  • Custom Domain — Use your own domain (Enterprise)

Creating a Status Page

  1. Navigate to Status Pages
  2. Click Create Status Page
  3. Configure branding and settings
  4. Select which monitors to display
  5. Configure subscriber settings
  6. Publish the status page
  7. Share the public URL with customers

Incident Management

Track and communicate incidents with your team and customers.

Incident Status

Status Description
Investigating Issue detected, investigation underway
Identified Root cause identified, working on fix
Monitoring Fix deployed, monitoring for stability
Resolved Issue fully resolved

Severity Levels

Level Description
Minor Degraded performance, partial outage
Major Significant impact, multiple services affected
Critical Complete outage, all users affected

Maintenance Windows

Schedule planned maintenance to prevent false alerts and notify customers.

  1. Navigate to Maintenance Windows
  2. Click Schedule Maintenance
  3. Select affected monitors
  4. Set the maintenance window time
  5. Add a description for the status page
  6. Save the maintenance window

During maintenance windows:

  • Monitors continue to run but don't trigger alerts
  • Status pages show "Scheduled Maintenance"
  • Subscribers receive maintenance notifications

Dashboard Widget

The Uptime Overview widget on your dashboard provides:

  • Overall uptime statistics
  • Monitor status summary (up/down counts)
  • Average uptime percentage
  • Monitor list with response times
  • Recent open incidents
  • Real-time WebSocket updates

Performance Charts

Each monitor's detail page includes interactive performance charts:

  • Response Time Chart — Historical response times with min/max/avg lines
  • Uptime Percentage Chart — Daily/weekly/monthly uptime visualization
  • Incident Timeline — Visual timeline of incidents and maintenance
  • Status Distribution — Pie chart showing up/down/degraded distribution

Time Ranges

  • Last 24 hours (default)
  • Last 7 days
  • Last 30 days
  • Last 90 days
  • Custom date range

Using Heartbeat Monitoring

Heartbeat monitoring is perfect for monitoring cron jobs, scheduled tasks, or any service that should run on a schedule.

  1. Create a Heartbeat monitor in Jasper
  2. Copy the unique token from the monitor settings
  3. Configure your service or cron job to ping the endpoint:
    curl -X POST https://heyjasper.ai/api/v1/uptime/heartbeat/{token}
  4. If the service fails to ping within the expected interval, an alert is triggered

Tip: Add the heartbeat ping at the end of your cron jobs so it only reports success when the job completes successfully.

API Access

Access uptime monitoring data programmatically:

Endpoint Description
GET /api/v1/uptime/overview Organization stats
GET /api/v1/uptime/monitors List monitors
GET /api/v1/uptime/monitors/{uuid} Monitor details
GET /api/v1/uptime/monitors/{uuid}/checks Check history
GET /api/v1/uptime/incidents List incidents
GET /api/v1/uptime/statistics Aggregated stats

Troubleshooting

Monitors Not Checking

  • Verify the Laravel scheduler is running
  • Check that queue workers are processing jobs
  • Review the Job Queue in Admin settings
  • Check the check_results table for recent entries

Alerts Not Sending

  • Verify notification channels are configured
  • Check user notification preferences
  • Review failed jobs in the queue
  • Check application logs for errors

Status Page Not Loading

  • Verify the status page is set to "published"
  • Check that monitors are attached to the status page
  • Verify the slug is correct in the URL

Need help? Check the general troubleshooting guide or contact support for assistance.

Was this page helpful?