Favicon of Healthchecks

Healthchecks

Receive instant alerts when your cron jobs or scheduled tasks fail to run. Set up monitoring in minutes using simple ping URLs. Monitor up to 20 jobs for free.

Ensure your critical background tasks never fail in silence. This monitoring service watches your cron jobs, scheduled tasks, and background workers, sending you an immediate alert if they don't run on time. The setup process is designed for simplicity: generate a unique ping URL and have your job send an HTTP request to it upon successful completion. If a ping doesn't arrive on schedule, you'll be notified instantly.

Key features include:

  • Flexible Scheduling: Define your job's schedule with simple intervals or precise cron expressions. A configurable grace period prevents false alarms for jobs that run slightly longer than usual.
  • Comprehensive Dashboard: View the real-time status of all your checks, organize them with tags, and review a detailed log of pings and alerts for easy debugging.
  • Extensive Integrations: Get alerts on your preferred platform. Connect with dozens of services including Email, SMS, Discord, Microsoft Teams, Opsgenie, and PagerTree.
  • Generous Free Plan: You can monitor up to 20 jobs completely free, with no credit card required to sign up.

Directory Structure

healthchecks
app-data
db-data
.env
docker-compose.yml

docker-compose.yml

services:
  db:
    image: postgres:15-alpine
    environment:
      POSTGRES_DB: healthchecks
      POSTGRES_USER: healthchecks
      POSTGRES_PASSWORD: ${DB_PASSWORD}
    volumes:
      - ./db-data:/var/lib/postgresql/data
    restart: unless-stopped

  web:
    image: healthchecks/healthchecks:latest
    ports:
      - "8000:8000"
    environment:
      - SECRET_KEY=${SECRET_KEY}
      - ALLOWED_HOSTS=*
      - DB_NAME=healthchecks
      - DB_USER=healthchecks
      - DB_PASSWORD=${DB_PASSWORD}
      - DB_HOST=db
      - SITE_ROOT=http://localhost:8000
      - PING_ENDPOINT=http://localhost:8000/ping/
      - DEFAULT_FROM_EMAIL=healthchecks@example.com
      - EMAIL_HOST=smtp.example.com
      - EMAIL_PORT=587
      - EMAIL_HOST_USER=${EMAIL_HOST_USER}
      - EMAIL_HOST_PASSWORD=${EMAIL_HOST_PASSWORD}
      - EMAIL_USE_TLS=True
    volumes:
      - ./app-data:/data
    depends_on:
      - db
    restart: unless-stopped

.env

SECRET_KEY=super_secret_key_change_me_in_production
DB_PASSWORD=super_secret_db_password
EMAIL_HOST_USER=your_smtp_username
EMAIL_HOST_PASSWORD=your_smtp_password
Categories:

Share:

Ad
Favicon

 

  
 

Similar to Healthchecks

Favicon

 

  
  
Favicon

 

  
  
Favicon