我已按照this question
中的建议行事当我使用Django时,我已将脚本设置为在db中存储每次运行脚本的日期和时间,但数据库中尚未存储任何条目。
有没有办法弄明白,除了输入“top”并搜索?
答案 0 :(得分:5)
首先,我可能会让cron使用MAILTO
在/ etc / crontab中:
MAILTO=username
其次,我通常在我的脚本中添加一些(几乎)不可能失败的东西,如下所示:
#!/bin/sh
echo "$0 ran on `date +%c`" >> /tmp/crontab_test.log
# ... rest of program
如果你直接从cron调用python脚本,你可以做类似的事情或创建一个包装shell脚本。
答案 1 :(得分:2)
如果您安装了sendmail,则可以将以下内容添加到“/ etc / aliases”
root:your_name@domain.com
执行此操作后,请更新运行此命令的别名:
sudo newaliases
每次作业运行时,Cron都会自动向您发送电子邮件。无需在crontab文件中指定。
此外,请确保您测试您的电子邮件功能(例如,确保您能够从服务器发送电子邮件),最后,创建一个简单的cronjob并测试您是否收到电子邮件。
不要假设!
答案 2 :(得分:1)
除了设置cron发送电子邮件之外,您还可以通过将以下内容添加到/etc/syslog.conf
来将cron的输出发送到单独的syslog日志工具。
# Log cron stuff cron.* /var/log/cron.log
每次运行作业时,都应该将消息记录到/var/log/cron.log。