需要监控的服务 服务未触发

需要监控的服务 服务未触发

在 Ubuntu 18 上我有一项服务:

[Unit]
Description=Gets CSV
OnFailure=pushovercsv.service

[Service]
ExecStart=/usr/bin/vehicles.sh

[Install]
WantedBy=multi-user.target

这有效。我试图设置另一项服务,如果第一项服务停止或处于失败状态,它会提醒我:

pushovercsv.服务

[Unit]
Description=PushOver Notifaction for vehicles CSV Service

[Service]
Type=simple
ExecStart=curl -s --form-string "token=<secret>" --form-string "user=<secret>" --form-string "message=CSV service"   https://<pushover api endpoint>

[Install]
WantedBy=multi-user.target

这两项服务均独立运作。

但它似乎没有OnFailure=pushovercsv.service调用 pushover 服务。如果我用 停止第一个服务,systemctl stop service1则不会收到来自 pushovercsv.service 的警报。

pushovercsv.service是否需要手动启动,还是在调用时启动?

答案1

顾名思义,OnFailure=仅当单元发生故障(以非零退出代码退出、被信号杀死或类似情况)时才会触发。如果您想在服务停止时运行命令,您甚至不需要单独的服务,只需ExecStopPost=足够。

相关内容