zabbix之微信报警

#:先在企业微信注册一个企业微信号

#:注册好之后,进入微信

 

 #:测试一下

 

 #:获取access_token

 

 

 #:开始获取

 

 

 

 #:获取

 

 

#;在server端安装pip

root@ubuntu:~# apt install python-pip

#:利用pip安装Python的request模块

root@ubuntu:~# pip install requests

#:在servers端准备脚本(必须放到此目录)

root@ubuntu:~# cd /apps/zabbix_server/share/zabbix/alertscripts/
root@ubuntu:/apps/zabbix_server/share/zabbix/alertscripts# vim linux37_weixin.py
#!/usr/bin/env python
#coding:utf-8
#Author:Zhang ShiJie
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='ww0873ad6fe9cf2ff1'   #:此处修改成对应的企业ID
appsecret="bvnET5_5Zt9Y9xEQpNnZnA2RlH8YgqH1KU6Sxz5z_1U"  #:此处也修改
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]
message=sys.argv[2] + "\n\n" +sys.argv[3]


params={
"touser": touser,
"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)


#;测试能不能发送

 

 #:账号必须是下图这个这种的菜市场账号

 

 

 

#:测试好以后,网页端创建媒介类型那个

 

 

 

 

#:给用户添加报警媒介

 

 

 

 

#:配置动作

 

 #:然后测试(测试会出错,一般权限拒绝)

#;先给执行权限

root@ubuntu:/apps/zabbix_server/share/zabbix/alertscripts# chmod +x linux37_weixin.py

#:在修改属主属组

root@ubuntu:/apps/zabbix_server/share/zabbix/alertscripts# chown zabbix.zabbix linux37_weixin.py

#:在把tmp下的文件删掉,因为前面测试取值的时候,系统会自动生成一个文件在这里,我们用root取得值所以这个文件也是root

root@ubuntu:/apps/zabbix_server/share/zabbix/alertscripts# rm -rf /tmp/weixin.log

#:在测试就成功了

 

posted @ 2019-09-24 13:34  Linus小跟班  阅读(649)  评论(0编辑  收藏  举报