我有一个linuxserver和一个linux服务。有时这种服务会突然停止,生产过程也会停止。不幸的是,这种情况没有受到任何人的欢迎或希望。我写了一个脚本来检查这个服务。此脚本在服务关闭时发送邮件,但此脚本无法自动启动我的服务。我不明白为什么?当我的服务停止时,我该怎么做才能自动启动这个脚本?
SUBJECT="Service Alarm"
TOEMAIL=myemail
pid1=`ps aux | grep service | awk '{print $2}'`
if [ -z "$pid1" ] #Job Checking
then
echo "Service is Not Running."
/bin/mail -s "$SUBJECT" "$TOEMAIL" < "Service is not running"
nohup systemctl start service > /opt/service/logs/service_web.err.log 2>&1 &
sleep 30
pid2=`ps aux | grep service | grep -v grep | awk '{print $2}'`
echo $pid2
if [ ! -z "$pid2" ] #Job Checking
then
echo "Service is running."
/bin/mail -s "$SUBJECT1" "$TOEMAIL" < "Service running"
fi
else
echo "Service is running."
fi发布于 2022-07-26 05:27:54
我解决了我的问题,真实和工作脚本如下。
SUBJECT=“服务警报”TOEMAIL=myemail pid1=$(pgrep -f服务)如果-z "$pid1“#作业检查然后回显”服务“不运行。/bin/mail -s "$SUBJECT”"$TOEMAIL“<”服务不运行“nohup启动服务>/opt/ service /log/service_web.err.log 2>&1 &睡眠30 pid2=$(pgrep -f服务)如果-n " $pid2”#作业检查然后回显“服务正在运行。“/bin/mail -s "$SUBJECT1”"$TOEMAIL“<”服务运行“fi else”服务正在运行。“fi
https://stackoverflow.com/questions/73108645
复制相似问题