DevOps

Reference material for developers working with infrastructure and automation. Cron expressions, scheduling patterns, and system tools explained with real-world examples.

← Dev Blog

Cron Job Not Running? A Field-Tested Debugging Checklist

A checklist for cron jobs that never fire or run at the wrong time: logs, environment differences, the % gotcha, missing newlines and DST skips.

6 July

Cron Expressions: A Complete Guide to Scheduling Syntax

Cron syntax in full: the five fields, special characters, predefined schedules, timezone pitfalls, cloud schedulers and the mistakes that bite most.

6 March

Scheduling, and Why It Silently Stops Working

Cron is the rare piece of infrastructure that fails without telling anyone. The job does not crash, it simply never runs, and you find out from a customer. These two pieces cover the syntax and the debugging in that order.

Cron expressions covers the five fields properly, including the step and range characters people copy without reading, the predefined shorthands, and the timezone behaviour that differs between system cron and every cloud scheduler. It also flags the sixth-field trap: /etc/crontab and files under /etc/cron.d take a user column that a personal crontab does not, so a working line breaks when you move it.

The debugging checklist is the one to open when something is already broken. It goes through where the logs actually are on Debian and RHEL, the minimal PATH cron gives you compared with your login shell, the unescaped % that truncates a command, the missing trailing newline that makes the last line vanish, and the DST transitions that skip or repeat a run once a year.

Build and check expressions in the crontab generator - it previews the next run times, which catches most mistakes faster than reading the syntax back to yourself.