Python接入预警通知API:服务器告警代码示例

用Python把服务器告警发出去 运维团队常用Python写监控脚本:定时采CPU、内存、磁盘使用率,超阈值后触发动作。互亿无线预警通知API走HTTPS POST,Python生态里用requests即可调用,标准HTTP请求无需引入第三…

用Python把服务器告警发出去

运维团队常用Python写监控脚本:定时采CPU、内存、磁盘使用率,超阈值后触发动作。互亿无线预警通知API走HTTPS POST,Python生态里用requests即可调用,标准HTTP请求无需引入第三方依赖。本文给出服务器告警的完整代码示例。

接口与参数

短信提交接口 https://api.ihuyi.com/sms/Submit.json,语音提交接口 https://api.ihuyi.com/voice/vm。核心参数:

  • account:控制台拿到的API ID
  • password:控制台拿到的API Key
  • mobile:接收告警的手机号
  • content:短信为模板内容,语音为TTS播报文本

响应code=2表示提交成功并返回smsid。闪信接口为 https://api.ihuyi.com/flash/Submit.json,参数一致。

基础发送示例

import requests

API = "https://api.ihuyi.com/sms/Submit.json"
AUTH = {"account": "API_ID", "password": "API_KEY"}

def send_alert(mobile, text):
    data = dict(AUTH, mobile=mobile, content=text)
    r = requests.post(API, data=data, timeout=10).json()
    if r.get("code") == 2:
        print("告警已提交", r.get("smsid"))
    else:
        print("发送失败", r)
    return r

send_alert("13800138000", "【服务器告警】web-01 CPU使用率92%,请处理。")

封装成多通道告警函数

按服务器故障级别选通道:

VOICE = "https://api.ihuyi.com/voice/vm"

def alert(level, mobile, text):
    if level == "P0":
        # 三合一:语音强提醒,模板同步下发短信与闪信
        requests.post(VOICE, data=dict(AUTH, mobile=mobile, content=text), timeout=10)
    elif level == "P1":
        # 双呼:短信留档 + 语音振铃
        send_alert(mobile, text)
        requests.post(VOICE, data=dict(AUTH, mobile=mobile, content=text), timeout=10)
    else:
        send_alert(mobile, text)

alert("P1", "13800138000", "数据库主从同步延迟300秒。")

监控脚本里怎么用

  1. 采集脚本每分钟读一次 /proc/stat 与磁盘使用率
  2. 超阈值连续两个周期才告警,避免抖动误报
  3. 调用alert()按级别发短信或打电话
  4. 把smsid与故障ID写入日志,便于事后追溯

语音content约70字对应20秒播报,无需录音;未接自动重呼一次,振铃60秒。长短信按多条计费,24小时可发送。5秒首发失败自动换通道,避免单通道抖动漏掉P0。

脚本里建议把告警手机号做成配置列表,按级别路由:P0群呼值班组,P1通知当值,P3只发短信。smsid写入日志后,可与监控系统的事件ID关联,事后复盘时一查就知道哪条告警通过哪条通道送达。

脚本里建议把告警手机号做成配置列表,按级别路由:P0群呼值班组,P1通知当值,P3只发短信。smsid写入日志后,可与监控系统的事件ID关联,事后复盘时一查就知道哪条告警通过哪条通道送达。

互亿无线提供11种语言代码示例,按成功计费、失败不计费。运维同学想把告警从"群机器人@人"升级为"直接打电话",注册免费试用,拿测试条数先跑通一台服务器的告警。

立即开始免费测试

注册即送免费测试条数,30分钟快速接入多通道预警API

免费注册,开始测试
咨询热线:400-118-6878
高新技术企业

高新技术企业

专精特新企业

专精特新企业

ISO9001认证

ISO9001 认证

安全等级认证

安全等级认证

AAA信用企业

AAA 信用企业