无法自动化crontab

时间:2015-03-17 06:30:12

标签: python django crontab

我有一个django项目,该项目利用函数notify_about_changes以表格格式向用户发送有关上周对象历史记录的电子邮件。当它通过

手动发生时,它工作正常
$python manage.py shell

为了自动完成这项工作,我调查了Django-Kronos并按如下方式配置了crontab: -

$sudo crontab -e
*1 * * * * pathto/venv/python3.4 pathto/manage.py notify_about_changes
$sudo cron restart

问题: - crontab无法解决其问题,例如我的ipaddress中的响应失败。

3 个答案:

答案 0 :(得分:0)

这可能不能直接回答你的问题,但我也很难用dron和cang一起使用cron,然后我转而使用{c}与{c}相比灵活的APScheduler。它有一个cron样式调度程序:

Cronschedule | APScheduler

APSchedulercron等类似模块相比,celery的主要优点是可以动态更改计划,而无需重新启动计划程序。

答案 1 :(得分:0)

当您从Cron调用您的应用程序时,它将“捕获”并处理您的应用程序生成的所有信息。

我不知道您正在使用的这个模块,但我相信以下其中一项将解决您的问题:

1-配置Cron将日志文件发送到特定文件。

2-将sys.stderr和sys.stdout更改为特定配置,如终端,shell,-app等

3-配置日志记录模块以更正所有信息。

答案 2 :(得分:0)

这可能是一个错字,但你的crontab看起来有一个错误的初始星号。它应该是:

1 * * * * pathto/venv/python3.4 pathto/manage.py notify_about_changes

这将在每小时过去一分钟运行脚本,这可能不是您想要的每周任务。相反,您可能想尝试:

0 0 * * 0 pathto/venv/python3.4 pathto/manage.py notify_about_changes

将在每个星期天午夜开始工作。