Ubuntu/Debian/CentOS 中如何查看 cron 日志?

查看 cron 日志:Ubuntu/Debian 在 /var/log/syslog 中 grep CRON,CentOS 在 /var/log/cron。本文介绍各系统的查看方法及如何让 cron 日志独立存放。

最佳实践
Ubuntu/Debian/CentOS 中如何查看 cron 日志?封面

Ubuntu/Debian:cron 日志混在 /var/log/syslog 里,用 grep CRON /var/log/syslog 过滤。CentOS/RHEL:独立存放在 /var/log/cron,直接查看即可。

Ubuntu / Debian

# 过滤 cron 相关记录
grep CRON /var/log/syslog

# 实时跟踪
tail -f /var/log/syslog | grep CRON

# 只看某个任务
grep "myjob.sh" /var/log/syslog

CentOS / RHEL

cat /var/log/cron
tail -f /var/log/cron

让 cron 日志独立存放(Ubuntu/Debian)

编辑 /etc/rsyslog.d/50-default.conf,取消注释:

cron.*    /var/log/cron.log

重启 rsyslog 后 cron 日志单独写入 /var/log/cron.log

sudo systemctl restart rsyslog

注意:cron 日志不包含脚本输出

这些日志只记录 cron 守护进程的事件(何时调度了哪个任务)。脚本自身的输出需要在 crontab 中重定向:

0 2 * * * /home/user/job.sh >> /var/log/myjob.log 2>&1

观测云对照

cron 日志和任务脚本输出都可以由观测云 DataKit 采集到平台统一检索;配合监控器,可以在任务报错或"该跑没跑"(日志中断)时自动告警。

常见问题(FAQ)

Q:systemd 系统的 journalctl 能看吗?
A:能:journalctl -u cron(Ubuntu)或 journalctl -u crond(CentOS)。

Q:日志里 (root) CMD (...) 是什么意思?
A:CRON 服务记录的执行事件,格式为 (用户) CMD (命令),表示某用户的 crontab 触发了一条命令。

Q:如何确认任务执行成功还是失败?
A:cron 日志只记录"执行了",不记录结果。成败要看脚本输出(重定向到文件)或退出码——可以在脚本里显式 echo 成功/失败标记。

获取专属方案

联系我们

加入社区

微信扫码
加入官方交流群

立即体验

在线开通,按量计费,真正的云服务!

立即开始

选择观测云版本

代码托管平台