zabbix 邮件报警和微信报警
# 邮件报警
一、定义邮件发件人
#密码来源 完成操作会看到
二、定义邮件收件人
三、启动动作
- #先开启
2.触发操作
3.恢复操作
4.开启发送消息
1.2. 微信报警
一、 首先要注册一个企业微信号 下面的账号会用到
# 企业ID
二、微信脚本放到指定目录
[root@iZ2zeapnvuohe8p14289u6Z /]# cd /usr/lib/zabbix/alertscripts [root@iZ2zeapnvuohe8p14289u6Z /]# rz #上传选择文件 [root@iZ2zeapnvuohe8p14289u6Z /]# chmod +x weixin.py #添加执行权限
[root@iZ2zeapnvuohe8p14289u6Z /]# systemctl restart zabbix-server zabbix-agent
#weixin.py 文件
#!/usr/bin/env python import requests import sys import os import json import logging logging.basicConfig(level = logging.DEBUG, format = '%(asctime)s, %(filename)s, %(levelname)s, %(message)s', datefmt = '%a, %d %b %Y %H:%M:%S', filename = os.path.join('/tmp','weixin.log'), filemode = 'a') corpid='ww7d1c1306d3bdfc5b' appsecret='a4GXY0yOkTopl2TxyOC6Pvats3XDW7K7vufL9GAL_oI' agentid=1000002 token_url='https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=' + corpid + '&corpsecret=' + appsecret req=requests.get(token_url) accesstoken=req.json()['access_token'] msgsend_url='https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=' + accesstoken touser=sys.argv[1] subject=sys.argv[2] #toparty='3|4|5|6' message=sys.argv[2] + "\n\n" +sys.argv[3] params={ "touser": touser, # "toparty": toparty, "msgtype": "text", "agentid": agentid, "text": { "content": message }, "safe":0 } req=requests.post(msgsend_url, data=json.dumps(params)) logging.info('sendto:' + touser + ';;subject:' + subject + ';;message:' + message)
# 上面的corpid是企业ID
#appsecret、agentid获取的方式如下:创建应用
#点进去就能看到
#先得现在python
[root@iZ2zeapnvuohe8p14289u6Z /]# yum install python -y [root@iZ2zeapnvuohe8p14289u6Z /]# yum install python-pip -y [root@iZ2zeapnvuohe8p14289u6Z /]# pip install requests -i https://pypi.tuna.tsinghua.edu.cn/simple
#第一个参数是账号,第二个参数是标题,第三个参数是内容
[root@iZ2zeapnvuohe8p14289u6Z /]# python weixin.py ‘ChangJunYong’ ‘饿了吗订单到了’ ‘请出门取’
三、创建媒体类型
# 脚本参数:{ALERT.SENDTO}, {ALERT.SUBJECT} and {ALERT.MESSAGE}
# 收件人
# 账号如下:微信企业
四、测试结果如下:
#报警邮件
#恢复邮件