整理墨尔本服务器定时任务(crontab)不执行的排查实战。
定时任务不执行会导致业务异常。以下是排查实战。
一、排查顺序 1) 确认 crontab 是否配置 2) 确认 cron 服务是否运行 3) 检查时间是否正确 4) 检查脚本权限和路径 5) 检查环境变量 6) 查看执行日志
二、常见原因 1) cron 服务未启动 2) 脚本路径用相对路径 3) 缺少环境变量(PATH) 4) 脚本无执行权限 5) 时间时区不对 6) 输出未重定向导致失败 7) 前一次未跑完被锁
三、解决 - 启动 cron 服务 - 使用绝对路径 - 脚本内设置环境变量 - 赋执行权限 - 校准时间时区 - 重定向输出到日志
四、排错技巧 - 查看 /var/log/cron - 临时加 echo 调试 - 手动执行脚本验证
五、预防 1) 集中任务管理 2) 任务执行监控 3) 失败告警 4) 幂等和锁
总结:定时任务不执行要查服务、路径、权限、环境变量和时区。