zsyzhou 发表于 2019-1-20 10:08:37

zabbix报警方式

  1、邮件报警
  使用mutt工具,脚本:
echo "$3" | mutt -s "$2" $1  

  注:python脚本可参考:http://strongit.github.io/2016/05/01/zabbix-email/
  

  2、短信报警
  python脚本调用短信接口:
# -*- coding: utf-8 -*-"""    send_sms_notify~~~~~~~~~~~~~~~
   调用短信网关接口发送告警短信。"""import sys
import json
import requests

SMS_GATE_URL = '短信网关接口'def send_sms_notify(to, params):
    data = {'to': to,'type': 'warn_notify','params': params
    }
    headers = {'Content-Type': 'application/json'}
    requests.post(SMS_GATE_URL, data=json.dumps(data), headers=headers)if __name__ == '__main__':if not len(sys.argv) == 4:
      print 'Usage: python send_sms_notify.py "phone" "ip" "host" "msg"'sys.exit(-1)
    to = sys.argv
    params = {'ip': sys.argv,'host': sys.argv,'msg': sys.argv
    }
    send_sms_notify(to, params)  3、微信报警
  git地址:https://github.com/strongit/WeiXin-Private-APIphp写的,亲测。
  python脚本:
import sys
import json
import urllib2
import requests
CorpID = "*******"Secret = "密钥"Access_token_url = "https://**api.weixin.qq.com/*******"req_token = urllib2.Request(Access_token_url)
response = urllib2.urlopen(req_token)
access_token = json.load(response)['access_token']
post_url = "https://**8api.weixin.qq.com/******"%access_token
def send_wechat(msg):
    data = {               "touser": "@all",               "toparty": "2",               "totag": " ",               "msgtype": "text",               "agentid": 1,               "text": {                   "content": msg
               },               "safe":"0"}
    headers = {'Connection': 'keep-alive','Content-Type': 'application/json; charset=utf-8'}      
    requests.post(post_url,data=json.dumps(data),headers=headers)if __name__ == '__main__':if not len(sys.argv) == 4:
      print "Usage: python wechat.py 'wechat_id' 'title' 'context'"sys.exit(-1)
    wechat = sys.argv
    title = sys.argv
    msg = sys.argv
    send_wechat(msg)  4、电话报警
  还未用到



页: [1]
查看完整版本: zabbix报警方式