SparkStreaming程序监控脚本,程序停止时会发邮件,同时也会重新启动改程序,但是l inux服务器必须具有发邮件的功能
#!/bin/bash
is_adx_show=$(yarn application -list| awk '{print $2}' | grep 程序名称 | wc -l)
if [ $is_adx_show = 0 ];then
echo 'adx_show is stop'
strDate=`date +%Y%m%d%H%M%S`
strStart="start adx_show ${strDate}"
echo "${strStart}" >> /存放地址/log.txt
echo "${strDate} adx_dwd2dws_fail" | mail -s '邮件主题' 邮箱地址
nohup 程序启动命令 >/dev/null 2>&1 &
echo "fail"
echo ' adx_dwd2dws finished '
else
strDate=`date +%Y%m%d%H%M%S`
strRun="adx_dwd2dws running ${strDate}"
echo "${strRun}" >> /存放地址/log.txt
fi