Skip to main content

free tools / cron generator

Cron every minute

Here is the line. Cron will run it, but it will not tell you the day it stops.

  1. Add one ping to the end of the job.
  2. Tell Uptimepage how often to expect it.
  3. A missed ping opens an incident and alerts you by Slack, email, PagerDuty, SMS or webhook.
alert me if this job stops

Free plan, no card. Opens the new-monitor form as a heartbeat check.

crontab -e
# .----------- minute: any value # | .--------- hour: any value # | | .------- day of month: any value # | | | .----- month: any value # | | | | .--- day of week: any value * * * * * /path/to/command # Every minute. That is 1,440 runs a day.

# next runs · your local time

    # the same job, reporting in after each good run * * * * * /path/to/command && curl -fsS $URL # $URL is the ping URL of an Uptimepage heartbeat check

    Add the line with crontab -e. Cron reads the server's time zone, which is often UTC.

    same schedule elsewhere

    Kubernetes CronJob

    spec:
      schedule: "* * * * *"

    GitHub Actions runs no schedule more often than every 5 minutes, so this one needs another scheduler.

    what to know

    One minute is the smallest step cron has. For anything faster, see cron every 30 seconds.

    Cron starts each run on time whether or not the last one finished. If the job can outlast the interval, guard it with a lock such as flock -n /tmp/job.lock /path/to/command, so runs do not pile up.

    For anything else, build it in the cron expression generator.

    more free tools: uptime SLA calculator · error budget calculator · incident message generator · DNS lookup · HTTP header checker · SSL certificate checker · SSL certificate decoder · domain expiry checker · website security checker · the whole set