Healthchecks understands most of the traditional cron syntax features. Under the hood, it uses the croniter package to parse and interpret cron expressions. Below is a showcase of supported syntax features.
Pro-tip!
On Unix-like operating systems, you can also easily access cron syntax
documentation by typing man 5 crontab
in shell.
A cron expression has five fields, separated by spaces. Asterisk is a wild card character and means "any value."
* |
* |
* |
* |
* |
|
---|---|---|---|---|---|
Day of week, 0 - 7, 0 or 7 is Sun | |||||
Month, 1 - 12 | |||||
Day of month, 1 - 31 | |||||
Hour of day, 0 - 23 | |||||
Minute, 0 - 59 |
Use numeric values instead of asterisks to match specific minutes, hours, days, and months.
0 |
18 |
* |
* |
5 |
|
---|---|---|---|---|---|
Run only on Fridays | |||||
Run every month of the year | |||||
Run every day of the month | |||||
Run at 6PM | |||||
Run at the start of the hour |
Use {v1},{v2},...,{vn}
to list multiple values.
0 |
9,12,18 |
* |
* |
* |
|
---|---|---|---|---|---|
Run on every weekday | |||||
Run every month of the year | |||||
Run every day of the month | |||||
Run at 9AM, 12PM and 6PM | |||||
Run at the start of the hour |
Use {start}-{end}
to define a range of matching values.
* |
* |
* |
* |
1-5 |
|
---|---|---|---|---|---|
Run from Monday to Friday | |||||
Run every month of the year | |||||
Run every day of the month | |||||
Run every hour of the day | |||||
Run every minute of the hour |
Use {start}-{end}/{step}
or */{step}
to define a range with a step.
*/15 |
* |
* |
* |
* |
|
---|---|---|---|---|---|
Run on every weekday | |||||
Run every month of the year | |||||
Run every day of the month | |||||
Run every hour of the day | |||||
Run every 15 minutes |
In the comma-separated lists, you can combine not only numeric values but also ranges.
0 |
18-23,0-8 |
* |
* |
* |
|
---|---|---|---|---|---|
Run on every weekday | |||||
Run every month of the year | |||||
Run every day of the month | |||||
Run at 6PM, 7PM, 8PM, ..., 7AM, 8AM | |||||
Run at the start of the hour |
JAN-DEC
can be used in the month field
and
MON-SUN
in the weekday field.
0 |
* |
1 |
APR |
* |
|
---|---|---|---|---|---|
Run on every weekday | |||||
Run in April | |||||
Run on the first day of the month | |||||
Run every hour of the day | |||||
Run at the start of the hour |
The cron daemon uses the server's local time. If your server's timezone is other than UTC, make sure to set a matching timezone for your check on Healthchecks as well.
On Ubuntu systems, you can check the server's timezone with:
cat /etc/timezone