Upstart:报告(电子邮件,日志)重生和失败

当新手工作失败并重生时,我想收到一封电子邮件,当所有重生工作都耗尽时,工作就会失败。

我怎样才能做到这一点?

当作业重新生成以及放弃作业时,Upstart会自动记录。

[266017.061509] init: foo main process (11582) terminated with status 1 [266017.061684] init: foo respawning too fast, stopped 

因此,只需查看这些消息的日志,并在看到它们时发送电子邮件警报。

您可以使用pre-start节来发送电子邮件,但我认为最好使用具有上次运行所需变量的post-stop

如果作业正常停止,则RESULT环境变量将正常,否则如果作业因失败而停止,则失败。

当作业失败时,将在PROCESS环境变量中给出失败的进程 。 这可以是开始前,开始后,主要,停止前或后停止; 它也可能是重新生成的特殊值,表示作业已经停止,因为它达到了重生限制。

来源: man stopped

参考文献:

  • Upstart简介,食谱和最佳实践:重生