【问题标题】:How to check if appened cron job has no errors while executing?如何检查附加的cron作业在执行时是否没有错误?
【发布时间】:2013-09-30 21:06:23
【问题描述】:

我在 crontab 中添加了三个不同的可执行脚本 - bash、php、python 脚本作为 cronjob

如何检查三个可执行脚本在从 cron 选项卡执行时没有给出任何错误或没有任何错误?

谢谢!!

【问题讨论】:

    标签: cron crontab


    【解决方案1】:

    不确定我是否理解这个问题,这是 3 个不同的 cron 条目,还是三个脚本共享同一个 cron 条目?对于后者(三个脚本的一个 cron 条目),请执行此操作(每分钟运行一次 cron):

    * * * * * /bin/bash script.sh && /usr/bin/php script.php && /usr/bin/python script.py

    只有当 bash 成功时 php 才会运行。同样,只有 bash 和 php 脚本都成功时,python 才会运行。如果您需要运行所有脚本而不管其中一个是否失败,请让每个作业从它们自己的 cron 条目运行。在这种情况下,请执行以下操作:

    * * * * * /bin/bash script.sh 2>>/var/log/script.sh.errors && echo "Bash 成功完成" >>/var/log/script.sh.success * * * * * /usr/bin/php script.php 2>>/var/log/script.php.errors && echo "PHP 成功完成" >>/var/log/script.php.success * * * * * /usr/bin/python script.py 2>>/var/log/script.py.errors && echo "Python 成功完成" >>/var/log/script.py.success

    在第二个示例中,错误记录到单独的文件中。脚本可以返回退出代码 0(即“成功”),即使有错误(例如,如果脚本实际上在其末尾有一个 exit 0 语句)。因此,最好在脚本运行时尝试捕获错误,然后在成功退出时捕获成功的退出代码。

    【讨论】:

    • 这些是 cron 选项卡中的单独脚本条目。脚本不依赖。我只需要检查我附加到 crontab 的脚本在执行时是否没有给出任何错误。这样,如果 cron 选项卡中的脚本出现任何错误,我可以立即删除它们,而不是让它们继续执行错误。因此,根据您的第二个解决方案,我需要在日志文件中记录错误,读取该日志文件是否有任何错误?谢谢!
    猜你喜欢
    • 2014-08-08
    • 1970-01-01
    • 1970-01-01
    • 2013-09-19
    • 2014-03-20
    • 1970-01-01
    • 2012-03-02
    • 2020-02-18
    相关资源
    最近更新 更多