2013-01-10 50 views
2

我有几个每1或2分钟运行一次小PHP脚本的cronjob。很明显,我不想每分钟都收发电子邮件。我确实想知道cron何时失败或何时遇到任何错误(=通知,警告,错误或未捕获的异常)。只有当cron发出错误时cron才发送邮件

我的PHP脚本打印了很多元数据(使用echo),因此可以手动运行并检查它。如果发生错误,我希望将所有元数据发送给我。如果没有错误发生,我不需要邮件,但是因为有输出,cron无论如何都会给我发一封电子邮件。

有没有办法让cron只发送给我一个错误发生的整个输出?

  • 我不想手动发送电子邮件
  • 我宁可不使用OB(如果一个cronjob内甚至有可能)
  • 我可以接受我的改变输出方法(print或一个自定义的函数,而不是echo等)

回答

2

退房crronic - 这是一个外壳包装,提供了此功能:

http://habilis.net/cronic/

请注意,如果出现错误(为了触发邮件),您需要退出时使用非零退出值。

+0

噢,我喜欢那样。我如何添加它以便我可以在任何地方运行它?我不想'/ root/tools/cronic/usr/bin/php/var/www/br2pr/source/cronjobs/script.php'。太长了。 – Rudie

+0

这就是你不幸遇到的问题。不要担心它太长,克朗不在乎。 :) –

+0

但我确实,因为它在我的邮件中。我可以在我的'$ PATH'中添加'cronic'或其他的东西?像'php'? – Rudie

相关问题