如果作业停止运行,让Upstart向我发送电子邮件通知的最佳方法是什么?

Gab*_*ack 4 php linux bash upstart job-scheduling

这是我运行的工作的一个例子.如果它退出,我想收到通知,因为它保持不变是很重要的.

(我知道php不是最好的工具,但它是别人的代码,所以,无论如何)

/etc/init/watchdog.conf

# Events
start on startup
stop on shutdown

# Automatically respawn
respawn
respawn limit 20 5

# Run the script!
script
    exec $PHP_PATH/php -f $WD_PATH/index.php wd_run
end script
Run Code Online (Sandbox Code Playgroud)

Jay*_*ard 5

您可以添加一个发布后脚本,如果重新生成服务,该脚本将发送电子邮件 -

post-start script
    echo "my-foo service started at `date +"%F %T.%N"`" | mail -s "My-foo Service Started" you@example.com
end script
Run Code Online (Sandbox Code Playgroud)

同样你可以使用post-stop:

post-stop script
    echo "my-foo service stopped at `date +"%F %T.%N"`" | mail -s "My-foo Service Stopped" you@example.com
end script
Run Code Online (Sandbox Code Playgroud)