gpt4 book ai didi

python - Crontab 在重新启动时不运行 Python 脚本

转载 作者:太空宇宙 更新时间:2023-11-04 05:35:11 25 4
gpt4 key购买 nike

我的应用程序有两个 python 脚本可以运行。我希望它们在启动时启动,但只有一个(gunicorn/mon)脚本启动。

我的定时任务:

@reboot /home/daniel/mon/start.sh
@reboot /home/daniel/bot1/start.sh

周一开始.sh

#!/bin/bash
/usr/bin/screen -dmS bb-mon /bin/bash -c 'cd /home/daniel/mon &&
/usr/local/bin/gunicorn app:app --bind 0.0.0.0:9999'

有效。

Bot1 start.sh

#!/bin/bash
/usr/bin/screen -dmS bb-bot /bin/bash -c 'cd /home/daniel/bot1 &&
/usr/bin/python3 app.py'

不工作。我在出现的屏幕 session 中测试了几个输出。屏幕 session 也将启动,但 python 脚本不会启动。如果我在 python 调用之后添加类似 > log.txt 的内容,则文件为空。在没有屏幕的情况下启动脚本也不起作用。

最佳答案

如果您的 cron 设置正确,当 cronjob 失败时您应该会收到一封电子邮件。

但是,由于 bash 调用 screen 调用 bash 来运行 Python 的复杂设置,错误可能未被记录。

尝试直接从 cron 运行 Python,使用脚本的绝对路径:

@reboot /usr/bin/python3 /home/daniel/bot1/app.py 2>&1 > /var/log/bot1.log

我建议您在日志文件中捕获 app.py 的所有输出,就像我在上面的示例中所做的那样。

关于python - Crontab 在重新启动时不运行 Python 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48038293/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com