Getting Started

Monitor your first cron job in less than 2 minutes

1

Create Your Account

Sign up for a free account at cronbeats.com/register

Free Plan Includes:

  • ✓ Monitor up to 5 cron jobs
  • ✓ Email alerts
  • ✓ 7-day history
  • ✓ No credit card required
2

Create Your First Job

Click "Add New Job" from your dashboard and fill in:

Example: "Daily Database Backup"

How often it runs (e.g., "Every day at 3:00 AM")

How long to wait before alerting (e.g., 10 minutes)

3

Add Ping to Your Cron Job

After creating your job, you'll get a unique Ping URL. Add it to your crontab. For the full list of endpoints (simple ping, start/end, progress) and parameters, see the Ping API guide.

Basic Ping (Simple)

0 3 * * * /path/to/backup.sh && curl -fsS https://cronbeats.io/ping/YOUR_KEY

With Start/End (Advanced)

0 3 * * * curl -X POST https://cronbeats.io/ping/YOUR_KEY/start && \
  /path/to/backup.sh && \
  curl -X POST https://cronbeats.io/ping/YOUR_KEY/end/success

💡 Pro Tip: Use && to only ping on success, or ; curl to always ping (even on failure). Ping API guide →

4

You're Done!

CronBeats will now monitor your job and alert you if:

  • ⚠️ The job doesn't run on schedule
  • ⚠️ The job takes longer than expected
  • ⚠️ The job fails to complete

What Happens Next?

You'll receive alerts instantly. Additional channels such as Slack, Discord, Telegram, webhooks, and automations are available based on your plan features.

📈

Progress Tracking: The CronBeats Advantage

See exactly what's happening inside your long-running jobs in real-time

Why Progress Tracking Matters

Traditional cron monitoring only tells you if a job started and finished. But what if your job is still running after 2 hours? Is it stuck? Frozen? Or just processing a huge dataset? You don't know.

CronBeats changes that. Send progress updates from inside your job and watch it in real-time on your dashboard. Know exactly what's happening, where it is, and if it's moving forward.

🎯 Real-Time Visibility

Display live progress updates sent by your job. See current percentage, step, records processed, and custom status messages as your job reports them.

🚨 Detect Stuck Jobs

If progress stops updating, you know the job is frozen or hung - not just slow. Take action before it's too late.

📊 Historical Insights

Review past runs to understand performance trends, identify bottlenecks, and optimize your jobs over time.

👥 Team Transparency

Everyone on your team can see job progress. No more Slack messages asking "Is the backup still running?"

How to Use Progress Tracking

The endpoints below (/start, /progress, /end) are part of the Ping API—see that page for the full reference and parameters.

💡 Two Progress Modes:

  • With percentage: /progress/{seq} (seq = 0-100) — Dashboard shows progress bar + message
  • Message only: /progress — Dashboard shows only your status message

Both use JSON format. See Ping API docs for details.

Example 1: Simple Percentage Progress

Full reference →

Send progress updates with percentage values as your job runs. You decide what values to send and when:

#!/bin/bash
PING_URL="https://cronbeats.io/ping/YOUR_KEY"

# Start the job
curl -X POST $PING_URL/start

# Your job logic with progress updates
curl -X POST "$PING_URL/progress/10" -H "Content-Type: application/json" -d '{"message":"Starting backup"}'
sleep 5

curl -X POST "$PING_URL/progress/30" -H "Content-Type: application/json" -d '{"message":"Backing up database"}'
sleep 10

curl -X POST "$PING_URL/progress/60" -H "Content-Type: application/json" -d '{"message":"Compressing files"}'
sleep 8

curl -X POST "$PING_URL/progress/90" -H "Content-Type: application/json" -d '{"message":"Uploading to S3"}'
sleep 7

curl -X POST "$PING_URL/progress/100" -H "Content-Type: application/json" -d '{"message":"Cleanup"}'
sleep 2

# End the job successfully
curl -X POST $PING_URL/end/success

# OR if job failed
curl -X POST $PING_URL/end/fail

Example 2: Processing Large Datasets

Full reference →

Track records processed when importing or processing data:

#!/usr/bin/env python3
import requests

PING_URL = "https://cronbeats.io/ping/YOUR_KEY"
TOTAL_RECORDS = 10000

# Start job
requests.post(f"{PING_URL}/start")

# Process records with progress updates
for i, record in enumerate(records, start=1):
    process_record(record)
    
    # Update progress every 100 records
    if i % 100 == 0:
        progress = int((i / TOTAL_RECORDS) * 100)
        requests.post(
            f"{PING_URL}/progress/{progress}",
            json={"message": f"Processed {i:,} of {TOTAL_RECORDS:,} records"}
        )

# Finish successfully (or use /end/fail if job failed)
requests.post(f"{PING_URL}/end/success")

Example 3: Multi-Step Pipeline

Full reference →

Track complex jobs with multiple stages:

#!/bin/bash
PING_URL="https://cronbeats.io/ping/YOUR_KEY"

curl -X POST $PING_URL/start

# Step 1: Extract
curl -X POST "$PING_URL/progress/0" -H "Content-Type: application/json" -d '{"message":"Step 1/4: Extracting data from API"}'
./extract_data.sh

# Step 2: Transform
curl -X POST "$PING_URL/progress/25" -H "Content-Type: application/json" -d '{"message":"Step 2/4: Transforming data"}'
./transform_data.sh

# Step 3: Load
curl -X POST "$PING_URL/progress/50" -H "Content-Type: application/json" -d '{"message":"Step 3/4: Loading into database"}'
./load_data.sh

# Step 4: Verify
curl -X POST "$PING_URL/progress/75" -H "Content-Type: application/json" -d '{"message":"Step 4/4: Verifying data integrity"}'
./verify_data.sh

curl -X POST "$PING_URL/progress/100" -H "Content-Type: application/json" -d '{"message":"Pipeline complete"}'
curl -X POST $PING_URL/end/success

What You See on the Dashboard

📊

Live Progress Bar

Visual indicator displaying the percentage your job sends

💬

Current Status

Your custom message showing what's happening now

⏱️

Elapsed Time

How long the job has been running

📈

Progress Timeline

See all progress updates in chronological order

Common Use Cases

📦 Database Backups

Monitor nightly database dumps to ensure your data is always protected

📧 Email Campaigns

Track scheduled newsletters and marketing emails

🔄 Data Sync Jobs

Ensure ETL pipelines and data imports complete successfully

🧹 Cleanup Tasks

Monitor log rotation, cache clearing, and temp file cleanup

📊 Report Generation

Track automated reports and analytics runs

🔍 Health Checks

Monitor system health, disk space, and service status checks

More Advanced Features

Unlock even more power based on your enabled plan features:

🔔

Multi-Channel Alerts

Slack, Discord, Telegram, SMS & more

👥

Team Workspaces

Collaborate with your team (up to 25 members)

🤖

AI Assistant

24/7 AI help for troubleshooting & setup

Ready to Get Started?

Create your free account and monitor your first job in 2 minutes