zabbix通过脚本发短信
原理
和zabbix发邮件是一样的,都是在action里面配置,发短信的方式是通过调用短信公司的api来完成,当然网上有不少利用139邮箱来发的,这个其实算调用email的一种,这里复述的是调用script的方法。
step
- 编写发短信的脚本。加上可执行权限。
- administration-> medis types 里面create ,类型选script,填上你的脚本名称。
- 在server的配置文件里面指定AlertScriptsPath 。注意这个目录能被zabbix 访问到。
- 重启server。
- 在action中配置。
- 个人用户的media 里面配置手机号码。
最后附上python脚本
#! /usr/bin/python
#coding:utf-8
import urllib2
import urllib
import sys
def sendm(mobile,content):
url = ‘http://xxx/sms.aspx‘
data = urllib.urlencode({
"userid":‘xx‘,
"account":‘xx‘,
"password":‘xxx‘,
"mobile":mobile,
"content":content,
"sendTime":"",
"action":"send",
"extno":""})
req = urllib2.Request(url,data)
res = urllib2.urlopen(req)
print res.read()
number=sys.argv[1]
msg=sys.argv[2]
sendm(number,msg)
其实脚本很多情况下都是调用urllib2 这个模块,可以看我之前的文档,python urllib2模块
时间: 2024-12-28 13:18:29