环境:点击查看
注册一个企业微信(官网)
进入后台管理
拉一个用户
创建一个应用
下载脚本(这步保留个人看法)
[root@chenshuyi requests-2.18.3]# wget https://github.com/X-Mars/Zabbix-Alert-WeChat.git
--2021-06-07 13:24:41-- https://github.com/X-Mars/Zabbix-Alert-WeChat.git
正在解析主机 github.com (github.com)... 13.229.188.59
正在连接 github.com (github.com)|13.229.188.59|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 301 Moved Permanently
位置:https://github.com/X-Mars/Zabbix-Alert-WeChat [跟随至新的 URL]
--2021-06-07 13:24:41-- https://github.com/X-Mars/Zabbix-Alert-WeChat
再次使用存在的到 github.com:443 的连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:未指定 [text/html]
正在保存至: “Zabbix-Alert-WeChat.git”
[ <=> ] 169,901 800KB/s 用时 0.2s
2021-06-07 13:24:42 (800 KB/s) - “Zabbix-Alert-WeChat.git” 已保存 [169901]
[root@chenshuyi requests-2.18.3]#
编写脚本(以下脚本仅供参考)
1 #!/usr/bin/env python
1 #!/usr/bin/env python
2 #-*- coding: utf-8 -*-
3 #comment: zabbix 接入微信报警脚本
4 import requests
5 import sys
6 import os
7 import json
8 import logging
9
10 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('/usr/lib/zabbix/alertscripts','weixin.log'),filemode = 'a')
11
12 corpid='ww6f9da3e4a93787c2'
#自己的
13 appsecret='NaRann1kAlEa5_C5laSvh0HmTBKWUDAKI2jsYFNhrAw'
#自己的
14 agentid=1000002
#自己的
15 #获取 accesstoken
16 token_url='https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=' + corpid + '&cor psecret=' +
17 appsecret
18 #print(token_url)
19 req=requests.get(token_url)
20 accesstoken=req.json()['access_token']
21
22 #发送消息
23 msgsend_url='https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=' + ac cesstoken
24 touser=sys.argv[1]
25 subject=sys.argv[2]
26 #toparty='3|4|5|6'
27 message=sys.argv[3]
28 params={
29 "touser": touser,
30 # "toparty": toparty,
31 "msgtype": "text",
32 "agentid": agentid,
33 "text": {
34 "content": message
35 },
36 "safe":0
37 }
38
39 req=requests.post(msgsend_url, data=json.dumps(params))
注意:以上脚本以及获取途径只供参考(无论如何,你获取到正确的脚本就可以了)
[root@chenshuyi alertscripts]# ll
总用量 4
-rw-r--r--. 1 zabbix zabbix 0 6月 7 13:44 wechat.log
-rwxr-xr-x. 1 zabbix zabbix 1594 6月 7 14:23 wechat.py
[root@chenshuyi alertscripts]#
测试
[root@chenshuyi alertscripts]# ./wechat.py "hao" "现在'date'"
https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=wwcdc49cc9a8b17d4d&corpsecret=kjljPsZHsDqtk0vufRZWupqzOPUd2Ra4NeLgSgFk8yQ {u'invaliduser': u'', u'errcode': 0, u'errmsg': u'ok'}
定时推送状态(每分钟一次)
定时器调用脚本(命令详解https://www.runoob.com/linux/linux-comm-crontab.html)
[root@chenshuyi alertscripts]# crontab -e 33 22 * * * /usr/lib/zabbix/alertscripts/backup.sh * * * * * /usr/lib/zabbix/alertscripts/wechat.py "chenshuyi status" "`date` It is OK!" ~
PS:分钟0-59 时钟0-23 天数1-31 月数1-12 星期几0-7
如果想实现定时推送备份之类的其实有很多方式,可以自己写程序也是可以的。