1.0 新建Media types

wKioL1S_utyCyP-1AAGvTlWKaLs408.jpg

1.1

wKioL1S_u7DShpFvAALFa-OlWTA574.jpg

1.2 注意zabbix_server.conf里面的配置,指定脚本放的位置及赋予脚本执行和属主zabbix权限。附件有脚本。

### Option: AlertScriptsPath
#       Full path to location of custom alert scripts.
#       Default depends on compilation options.
#
# Mandatory: no
# Default:
# AlertScriptsPath=${datadir}/zabbix/alertscripts
  AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts

wKioL1S_vkDS9h0VAACScaAast4829.jpg

1.3 关联zabbix系统用户,我做的是新建用户test01,并定义告警的发送方式,通知的手机号码,定义通知的时间及事件类型等。

wKiom1S_vn3gq29uAAIj89HsGIU545.jpg

1.4 设置告警通知方式,通知手机号,通知时间

wKiom1S_wCjQ__8hAALlnp49DSA391.jpg

1.5 定义改用户的权限

wKiom1S_wdOC02evAAI-pYIomrw777.jpg

1.6 创建,配置actions,当监控项的值达到设定的阀值,激活触发器,然后根据定义的action来做出告警通知。

wKiom1S_wp_zrn6wAALJhJNCNfo036.jpg

1.7 Action条件

wKiom1S_wzPT0m6nAAIBcI45S6o008.jpg

1.8执行操作,定义发送方式,发给哪个用户,报警升级等等。

wKioL1S_xSKCT4aqAALI_CUaGC8732.jpg

6.触发事件,测试能否收到告警短信。

6.1调试的时候,可修改zabbix_server.conf的debuglevel=4,重启zabbix_server使配置生效。

6.2抓取日志信息,对排错很关键。默认日志位置:/tmp/zabbix_server.log

脚本内容:

#!/usr/bin/env python
# coding: utf-8

import sys
import urllib
import urllib2

"""
使用八优短信平台进行短信报警
接收参数输入
参数一:接收手机号(zabbix传来的第1个参数,报警接收手机号)
参数二:短信主题(zabbix传来的第2个参数,报警主题)
参数三:短信内容(zabbix传来的第3个参数,报警内容)


手动调试方法

python sendsms.py *********** "报警测试"

"""

def sendsms(phone,subject,message):
    """
    发送短信
    """
    cdkey = '***********'
    password = '******'
    
    values = {'cdkey':cdkey,
              'password':password,
              'phone':phone,
              'message':message}
    
    data = urllib.urlencode(values)
    post_url = 'http://sdk4report.eucp.b2m.cn:8080/sdkproxy/sendsms.action'
    try:
        conn = urllib2.urlopen(post_url,data)
        print conn.read()
    except Exception , e:
        print e
        
if __name__ == '__main__':
    
    phone = sys.argv[1]
    subject = sys.argv[2]
    message = sys.argv[3]
    
    sendsms(phone,subject,message)

本文转自:http://hanyun.blog.51cto.com/1060170/1604918