1、查看zabbix-server 的配置文件中 AlertScriptsPath 的配置
### Option: AlertScriptsPath
# Full path to location of custom alert scripts.
# Default depends on compilation options.
#
# Mandatory: no
# Default:
AlertScriptsPath=/usr/share/zabbix/alertscripts
注:如果修改了默认配置,需要重启zabbix-server
2、在/usr/share/zabbix/alertscripts目录,编写python脚本
脚本如下:test.py
#!/usr/bin/env python
import pika
import sys
import json
connection = pika.BlockingConnection(pika.connection.URLParameters('amqp://username:password@192.168.102.134:5672/ECI.HOST'))
channel = connection.channel()
#channel.exchange_declare(exchange='amp.msgpush',type='topic')
routing_key = sys.argv[1] if len(sys.argv) > 1 else 'wechat.push'
#f=file('/usr/share/zabbix/alertscripts/test.log','w+')
#f.write(sys.argv[2])
#f.close()
MESS=sys.argv[2].split(',')
#
data={}
data["TRIGGERNAME"]=MESS[0]
data["TRIGGERSTATUS"]=MESS[1]
data["TRIGGERSEVERITY"]=MESS[2]
data["HOSTNAME"]=MESS[3]
data["EVENTDATE"]=MESS[4]
data["EVENTTIME"]=MESS[5]
data["TRIGGERKEY"]=MESS[6]
data["ITEMNAME1"]=MESS[7]
data["ITEMVALUE1"]=MESS[8]
message=json.dumps(data)
#message = ' '.join(sys.argv[2:]) or 'Hello World!'
channel.basic_publish(exchange='amp.msgpush',
routing_key=routing_key,
body=message)
#print(" [x] Sent %r:%r" % (routing_key, message))
connection.close()
3、报警媒介类型
4、配置动作(action )
5、配置用户下报警媒介