Skip to main content

Better Uptime Provider

Monitor websites and services with Better Uptime using Pulumi
2 min read

The Better Uptime provider enables you to manage monitoring, alerting, and incident management resources using Pulumi. This provider is dynamically bridged from the Terraform Better Uptime Provider.

Installation#

Install the Better Uptime provider package using your preferred package manager:

Configuration#

Getting API Token#

  1. Log in to your Better Uptime account at betteruptime.com
  2. Navigate to Settings → API Tokens
  3. Create a new API token
  4. Copy the token value

Provider Setup#

Or using environment variables:

Quick Start#

Key Features#

Uptime Monitoring#

Monitor websites, APIs, and services:

SSL Certificate Monitoring#

Heartbeat Monitoring#

Monitor cron jobs and scheduled tasks:

Incident Policies#

Integrations#

Connect with popular tools:

Common Use Cases#

Complete Monitoring Setup#

Best Practices#

1. Set Appropriate Check Frequencies#

2. Use Confirmation Periods#

Avoid false positives:

3. Organize with Monitor Groups#

Monitor Types#

TypeDescriptionUse Case
statusHTTP status code checkWebsites, APIs
pingICMP pingServers, network devices
keywordContent verificationPage content monitoring
portPort availabilityCustom services
heartbeatExpected check-insCron jobs, batch processes

Troubleshooting#

Common Issues#

API Rate Limiting#

Solution: Reduce the frequency of API calls or contact Better Uptime support.

Invalid URL Format#

Solution: Ensure URLs include the protocol (http:// or https://).

Resource Reference#

Monitor#

Key Arguments:

  • url (Required): URL or IP to monitor
  • monitorType (Required): Type of monitor (status, ping, keyword, port, heartbeat)
  • checkFrequency (Optional): Check interval in seconds (default: 60)
  • requestTimeout (Optional): Request timeout in seconds (default: 30)
  • confirmationPeriod (Optional): Confirmation period in seconds (default: 0)

Attributes:

  • id: Monitor ID
  • status: Current status
  • createdAt: Creation timestamp

Heartbeat#

Key Arguments:

  • name (Required): Heartbeat name
  • period (Required): Expected period in seconds
  • grace (Optional): Grace period in seconds

Attributes:

  • id: Heartbeat ID
  • url: Check-in URL