zabbix微信告警

环境:点击查看

注册一个企业微信(官网)

zabbix微信告警_第1张图片
进入后台管理
zabbix微信告警_第2张图片
拉一个用户
zabbix微信告警_第3张图片
创建一个应用

zabbix微信告警_第4张图片
zabbix微信告警_第5张图片
zabbix微信告警_第6张图片
下载脚本(这步保留个人看法)

[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'}

zabbix微信告警_第7张图片

定时推送状态(每分钟一次)

zabbix微信告警_第8张图片

定时器调用脚本(命令详解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
zabbix微信告警_第9张图片
如果想实现定时推送备份之类的其实有很多方式,可以自己写程序也是可以的。

zabbix微信告警_第10张图片

你可能感兴趣的:(Linux系统基本操作,zabbix,微信,微信告警)