Skip to main content

What are Monitors?

Monitors in StatusStack allow you to track the health and performance of your own websites, APIs, and custom endpoints. Unlike Sources (which monitor third-party services), Monitors check endpoints that you own and control.

Key Features

HTTP/HTTPS Health Checks

Ping your endpoints at regular intervals to verify availability

SSL Certificate Monitoring

Track certificate expiry dates and get alerted before they expire

Response Time Tracking

Monitor performance trends and detect slowdowns

Uptime Percentage

Calculate and display historical uptime statistics

Monitor Types

Website Monitors

Monitor public or private websites:
GET https://www.yoursite.com/
Expected Status: 200 OK
Check Interval: 60 seconds
Use Cases:
  • Monitor your company website
  • Track landing page availability
  • Check documentation sites
  • Verify blog accessibility

API Health Checks

Monitor API endpoints with custom validation:
GET https://api.yourservice.com/health
Headers:
  Authorization: Bearer your-token-here
Expected Status: 200
Expected Body: {"status": "healthy"}
Check Interval: 30 seconds
Use Cases:
  • Monitor production APIs
  • Track microservice health
  • Verify webhook endpoints
  • Check database connectivity

Custom Endpoints

Monitor any HTTP/HTTPS endpoint:
  • Admin Panels - Verify dashboard accessibility
  • CDN Endpoints - Check asset delivery
  • Load Balancers - Monitor routing health
  • Internal Services - Track private network endpoints

Creating a Monitor

1

Navigate to Monitors

In your dashboard, go to MonitoringWebsite Monitors
2

Click Create Monitor

Click the “Create Monitor” button in the top-right
3

Configure Basic Settings

Fill in the monitor details:
Name: Production API Health
URL: https://api.yoursite.com/health
Description: Monitors production API availability (optional)
Team: Select your team
4

Set Check Interval

Choose how often to check the endpoint:
  • 30 seconds - Critical endpoints
  • 60 seconds - Production services
  • 5 minutes - Standard monitoring
  • 15 minutes - Less critical endpoints
5

Configure Validation

Define what “healthy” means:
  • Expected Status Code - 200, 201, 204, etc.
  • Response Timeout - Maximum wait time (default: 10s)
  • Follow Redirects - Enable/disable redirect following
  • Verify SSL - Check SSL certificate validity
6

Add to Stack

Select which Stack(s) to add this monitor to
7

Save Monitor

Click Create to start monitoring

Monitor Configuration Options

Basic Settings

FieldDescriptionExample
NameDisplay name for the monitor”Production API”
URLEndpoint to monitorhttps://api.example.com/health
DescriptionOptional notes”Main API health endpoint”
TeamWhich team owns this monitor”Engineering Team”

Check Configuration

SettingOptionsRecommended
Check Interval30s, 1m, 5m, 15m, 30m, 60m60s for production
Timeout5s, 10s, 15s, 30s10s
Retry Count1-5 retries3 retries
Failure Threshold1-10 failures3 failures

Advanced Options

Add authentication or custom headers:
Headers:
  Authorization: Bearer sk_live_abc123...
  X-API-Key: your-api-key-here
  User-Agent: StatusStack Monitor
Track certificate expiry:
  • Monitor Expiry - Get alerted before certificates expire
  • Warning Threshold - Alert 30 days before expiry
  • Critical Threshold - Alert 7 days before expiry
Validate response content:
  • Status Code - Expected HTTP status (200, 201, etc.)
  • Response Body - Check for specific text or JSON
  • Response Time - Alert if slower than threshold
Schedule maintenance to pause monitoring:
  • One-Time - Specific date/time range
  • Recurring - Weekly maintenance windows
  • Manual - Pause/resume manually

Monitor Status Levels

Monitors report one of four status levels:

Operational

All checks passing, endpoint is healthy

Degraded

Some checks failing, but threshold not met

Critical

Failure threshold exceeded, endpoint is down

Maintenance

Scheduled maintenance, monitoring paused

Status Calculation

// Monitor status logic
if (consecutiveFailures >= failureThreshold) {
  status = 'CRITICAL'
} else if (consecutiveFailures > 0) {
  status = 'DEGRADED'
} else if (maintenanceMode) {
  status = 'MAINTENANCE'
} else {
  status = 'OPERATIONAL'
}

Monitor Analytics

Each monitor provides detailed analytics:

Uptime Metrics

  • Current Uptime - Last 24 hours, 7 days, 30 days, 90 days
  • Uptime Percentage - Historical uptime calculation
  • Incident Count - Number of outages in period
  • MTTR - Mean time to recovery

Performance Metrics

  • Response Time - Average, min, max response times
  • Performance Trends - Response time over time
  • Slowest Checks - Identify performance issues
  • Geographic Performance - If checking from multiple regions

Check History

  • Recent Checks - Last 100 checks with timestamps
  • Failure Details - Why checks failed (timeout, status code, etc.)
  • Recovery Timeline - When services came back online
  • Status Change Log - All status transitions

Integration with Stacks

Monitors seamlessly integrate with Stacks:

Adding Monitors to Stacks

Select Stack(s) when creating the monitor:
Monitor: Production API
Stacks:
  - Production Infrastructure
  - Public Status Dashboard

Stack Status Impact

Monitors contribute to Stack overall status:
  • Operational Monitor → Stack can remain operational
  • Degraded Monitor → Stack becomes degraded
  • Critical Monitor → Stack becomes critical

Notifications

Monitors trigger notifications when status changes:

Notification Events

EventDescriptionRecommended Action
Monitor DownFailure threshold exceededImmediate investigation
Monitor DegradedSome failures, not critical yetMonitor closely
Monitor RecoveredBack to operationalNo action needed
SSL ExpiringCertificate expiring soonRenew certificate
Slow ResponseResponse time threshold exceededInvestigate performance

Configuring Alerts

Create notification rules for monitors:
Notification Rule:
  Name: "Critical Monitor Alerts"
  Triggers:
    - Monitor becomes Critical
    - Monitor becomes Degraded
  Monitors:
    - Production API
    - Production Website
  Channels:
    - Slack: #alerts
    - PagerDuty: On-Call Team
    - Email: ops@company.com

Best Practices

Critical Services - 30-60 seconds
  • Production APIs
  • Payment processing endpoints
  • User-facing websites
Standard Services - 5 minutes
  • Internal dashboards
  • Admin panels
  • Documentation sites
Less Critical - 15-30 minutes
  • Development environments
  • Staging sites
  • Internal tools
Recommended: 3 consecutive failures
  • Prevents false positives from network blips
  • Balances detection speed with accuracy
  • Typically detects real outages within 2-3 minutes
Adjust based on criticality:
  • Ultra-critical: 2 failures
  • Standard: 3 failures
  • Low priority: 5 failures
API Endpoints: 10 seconds
  • Most APIs respond in < 1 second
  • 10 seconds catches legitimate slowdowns
Websites: 15-30 seconds
  • Page load can be slower
  • Includes rendering time
Microservices: 5 seconds
  • Should be fast
  • Detect performance issues quickly
Group by environment:
Production Stack
  ├─ Production API Monitor
  ├─ Production Website Monitor
  └─ Production Database Monitor

Staging Stack
  ├─ Staging API Monitor
  └─ Staging Website Monitor
Group by service:
API Services Stack
  ├─ Auth API Monitor
  ├─ User API Monitor
  └─ Payment API Monitor

Common Use Cases

Scenario 1: Production API Monitoring

Monitor a production API with authentication:
Monitor Configuration:
  Name: Production API Health
  URL: https://api.yourservice.com/health
  Method: GET
  Headers:
    Authorization: Bearer your-api-key
  Expected Status: 200
  Expected Body Contains: "healthy"
  Check Interval: 60 seconds
  Failure Threshold: 3
  Timeout: 10 seconds
  Stacks:
    - Production Infrastructure
  Notifications:
    - Slack: #production-alerts
    - PagerDuty: On-Call

Scenario 2: Website Uptime Monitoring

Monitor a public website:
Monitor Configuration:
  Name: Company Website
  URL: https://www.yourcompany.com
  Method: GET
  Expected Status: 200
  Check Interval: 5 minutes
  Failure Threshold: 3
  Verify SSL: Yes
  SSL Alert Threshold: 30 days
  Stacks:
    - Public Services
  Notifications:
    - Email: ops@company.com

Scenario 3: Multi-Region Monitoring

Monitor from multiple regions (Enterprise feature):
Monitor Configuration:
  Name: Global API Endpoint
  URL: https://api.global-service.com/ping
  Regions:
    - US East
    - EU West
    - Asia Pacific
  Check Interval: 60 seconds
  Aggregate Results: Any region passing = Operational

Troubleshooting

Monitor Shows as Down but Site is Up

Possible Causes:
  1. Firewall blocking StatusStack IPs - Whitelist our monitoring IPs
  2. Rate limiting - Exclude monitoring user-agent from rate limits
  3. Authentication required - Add proper headers/credentials
  4. Redirects - Enable “Follow Redirects” option
  5. SSL certificate issues - Check SSL validity

False Positive Alerts

Solutions:
  1. Increase failure threshold - From 3 to 5 consecutive failures
  2. Increase timeout - From 10s to 15s or 30s
  3. Check network connectivity - Verify endpoint is publicly accessible
  4. Review expected status codes - May need to accept 201, 204, etc.

Monitors Not Alerting

Check:
  1. Notification rules configured - Ensure rules exist for monitors
  2. Notification channels working - Test webhook/Slack/Discord integration
  3. Alert level thresholds - Verify degraded vs critical thresholds
  4. Maintenance mode - Ensure monitor isn’t in maintenance window

Monitor Limits by Plan

PlanMax MonitorsCheck IntervalRegions
Free15 minutes1 region
Pro2530 seconds1 region
EnterpriseUnlimited30 secondsMulti-region

Next Steps

Create Your First Monitor

Step-by-step guide to creating monitors

Notification Setup

Configure alerts for monitor changes

Stacks

Learn how to organize monitors into Stacks

Dashboard Guide

Master the monitoring dashboard