Skip to main content

脚本3分钟实现电话报警

· 4 min read
Fighter

运维在日常工作中,会写很多脚本,但是脚本想支持电话短信报警却比较麻烦,要想让脚本支持电话、短信报警,一般要在电话短信运营商平台提交资料审核才可以,有些运营商平台还需要提交企业资质才可以,这就给运维带来了很多门槛,那么现在使用Spug推送助手不需要任何资质,微信扫码登录就可以实现脚本发短信打电话。

1、配置电话短信模板

打开推送助手(push.spug.cc) / 消息模版 / 新建 / 选择电话短信 / 配置模板 / 配置通知手机号

2、配置完模板,复制模板 URL,就可以用脚本打电话发短信

3、先测试一下是否能正常打电话

# 命令执行curl命令测试打电话发短信,key1 和key2 是模板里面接受的二个变量

[root@manage]# curl "https://push.spug.cc/send/byPj9N3xxxYQ?key1=测试报警&key2=服务器IPxxxx"
{"code": 200, "msg": "请求成功"}

4、编写脚本监控Mysql和主从同步,发生异常推送电话短信报警

[root@manage]# vim mysql_alert.sh

#!/bin/bash
mysql_user="repl"
mysql_pass="repl@password"


mysql_status=`netstat -nl | awk 'NR>2{if ($4 ~ /.*:3306/) {print "Yes";exit 0}}'`

if [ "$mysql_status" == "Yes" ];then
slave_status=`mysql -u${mysql_user} -p${mysql_pass} -e"show slave status\G" | grep "Running" | awk '{if ($2 != "Yes") {print "No";exit 1}}'`
if [ "$slave_status" == "No" ];then
echo "slave is not working!"

# 主从同步异常推送电话短信报警
curl "https://push.spug.cc/send/byPj9N3xxxYQ?key1=Mysql主从同步&key2=服务器IP:192.168.100.1"
else
echo "slave is working."
fi
else
[ ! -f "/tmp/mysql_down" ] && echo "Mysql Server is down!" | mail -s "Warn!MySQL server is down!" ${email_addr}

# mysql进程异常电话短信报警
curl "https://push.spug.cc/send/byPj9N3xxxYQ?key1=Mysql进程&key2=192.168.100.1"
fi

5、验证电话短信报警

6、支持更多渠道报警发送

如果想让脚本支持邮件、钉钉、飞书、企业微信报警,只需要在推送助手平台上编辑模板,把邮件、钉钉、飞书、企业微信打开配置一下就可以实现不改动脚本的情况下实现。

飞书、钉钉、企业微信、邮件报警模板内容:


## <font color='#f90202'> ${key1} 发生异常 </font> ##
**报警项目:** ${key1}
**报警主机:** ${key2}

飞书群收到的报警

钉钉群收到的报警


关于推送助手

上海时巴克科技有限公司旗下的推送产品,公司旗下现有产品「Spug开源运维平台」「Spug推送助手」「监控助手」「SSL证书监控」,公司专注为中小企业服务,推送助手帮助用户简单快速实现电话、短信、邮件、飞书、钉钉、微信、企业微信等多通道消息推送。 官网链接:push.spug.cc


更多资讯、视频、欢迎关注公众号“Spug社区”