mysubmail 短信报警

https://www.mysubmail.com/chs/documents/developer/YPWD84   文本文档
 
 官网:www.mysubmail.com 

操作流程:
快速接入短信 API接口并测试发送操作指引
仅需6步 即可完成 API短信发送

  1. SDK开发包下载链接与代码示例
https://www.mysubmail.com/chs/documents/developer/index 


2. 短信验证码 API介绍文档
https://www.mysubmail.com/chs/documents/developer/t2f1J2 


3. 一分钟实名认证
https://www.mysubmail.com/chs/account/settings#/agreement 


4. 创建短信项目模板
https://www.mysubmail.com/chs/sms/templates 


5. 创建短信项目发送 AppID
https://www.mysubmail.com/chs/sms/apps 


6. 提交并发送API测试短信
 
 
 
脚本如下:
 
 #!/bin/bash

Mail_User="yinhuanyi_cn@163.com"
Tel_User="18670236750"
User=root
Password=123456
Host=localhost
MySQL_Login="mysql -u$User -h$Host -p$Password"


# 检查数据库的复制情况
Check_Repl(){

        # 将 yes yes 0 赋值 给一个arguments数组
        arguments=(`$MySQL_Login -e "show slave status\G" | awk -F: '/_Running|_Behind_/{print $NF}'`) 

        # 判断下argument数组中的最后一个元素是否是null,如果是Null这么给其赋值一个延时值
        expr ${arguments[2]} + 1 &> /dev/null
        retval=$?

        if [ $retval -ne 0 ];then
            arguments[2]=500
        fi

        if [ "${arguments[0]}" == "Yes" -a "${arguments[1]}" == "Yes" -a "${arguments[2]}" -lt 100 ];then

                # 数据库复制正常
                echo " MySQL repl is healthy "
                return 0

        else

                # 如果复制有错误,延时超过阈值,
                echo "MySQL repl is wrong"
                echo "Trying to repair it"

                # set global sql_slave_skip_counter=1 是跳过一个event事物
                # 这种解决方式应用于:当允许主从数据可以微小不一致的情况下
                # 如果必须主从数据库一致,那么应该使用备份还原的方式,将数据恢复再同步(切记)
                $MySQL_Login -e "stop slave; set global sql_slave_skip_counter=1; start slave;" && echo "slave restart ok" || echo "slave restart failed"
 
        fi

        return 1

}

# 发送邮件报警
Send_Mail(){

        # 设置主题
        Subject="mysql  repl is wrong"

        # 发送邮件
        echo "$1 MySQL repl is wrong, Deal with it as quickly as possible " | mail -s "$Subject"  "$Mail_User"

}

# 发送短信报警(这里试用submail给大家演示发送短信报警, 微信报警自行搞定)
Send_DX(){

        # 拿到报警时间
        TIME=$1
        # 这是appid
        APPID=17468
        # 这是指纹识别码
        SIGNATURE=a930ebc11c16ca1ee99b24548cda1273

        # 发送短信网关
        HTTP=https://api.mysubmail.com/message/send.json 


        # 发送短信
        # curl -d "appid=17468&to=18670236750&content=【MySQL】MySQL主从复制出现问题,请立即处理&signature=a930ebc11c16ca1ee99b24548cda1273" https://api.mysubmail.com/message/send.json 

}

# 发送消息
Send_Message(){

        # 拿到当前系统时间
        Time=`date "+%F %T"`

        # 发送短信
        Send_DX $Time

        # 发送邮件
        Send_Mail $Time

}


# 主函数入口
Main(){

        while true; do

                # 先检查数据库复制是否有问题
                Check_Repl
                retval=$?

                if [ $retval -eq 0 ];then

                        echo "MySQL repl  is healthy"

                else

                        # 如果有问题发送 
                        Send_Message 

                fi

                # 让监控脚本30秒执行一次
                sleep 30

        done

}

# 所有的任务从这里开始执行
Main
 
 
 
在linux中操作
 
 curl -d 'appid=17490&to=18720170604&content=【abc】abc&signature=4d8efbb6b2343a69b7820621d11ded8b' 
posted @ 2017-11-16 14:37  ~小学生~  阅读(777)  评论(0编辑  收藏  举报