[关闭]
@Mr-13 2020-10-13T10:10:07.000000Z 字数 1579 阅读 69

zabbix笔记(7):定义报警媒介(群机器人:钉钉、企微)

zabbix


文章引用:zabbix从放弃到入门(9):定义报警媒介


  企业微信群,邮件点击“添加群机器人”,如下图:
  

  需要安装python,参考:CentOS7.4安装Python3.7
  
配置zabbix脚本,先去看一下配置文件里设置的zabbix脚本存放位置:

  1. $ vim /etc/zabbix/zabbix_server.conf
  2. # AlertScriptsPath 配置节就是该设置项

  看一下当前脚本目录下是否已经存在其他脚本文件:
  

  如上图,默认配置下,目录中是没有其他脚本文件的;那么为了后期维护方便,我们集中把脚本文件目录设置为 /data/zabbix_scripts/alertscripts,过程如下:
  

  1. [root@mr13 ~] mkdir -p /data/zabbix_scripts/alertscripts # 逐级创建目录
  2. [root@mr13 ~] cd /data/zabbix_scripts/alertscripts # 进入目录
  3. [root@mr13 alertscripts] touch wxboot.py # 创建脚本文件

  因为需要用到 requests ,需要pip3安装一下

  1. [root@mr13 ~]# pip3 install requests

  编辑wxboot.py内容如下:

  1. #!/usr/bin/python3
  2. #-*- coding: utf-8 -*-
  3. import requests
  4. import json
  5. import sys
  6. import os
  7. headers = {'Content-Type': 'application/json;charset=utf-8'}
  8. # api_url 的值是群机器人时生成的webhook地址,这里根据实际情况进行设置
  9. # api_url_wx : 微信群机器人webhook地址
  10. # api_url_wx : 钉钉群机器人webhook地址
  11. api_url_wx='https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=f33efdc6-13cc-40e4-a3d5-9af3743ed5e2'
  12. api_url_dd='https://oapi.dingtalk.com/robot/send?access_token=f9c4a2640d065ed042b23e9d33bd39dacb04f4558460c6802ffeda0f643a0784'
  13. def msg(text):
  14. json_text= {
  15. "msgtype": "text",
  16. "text": {
  17. "content": text
  18. },
  19. }
  20. # 正式环境部署的时候,不需要print,这里仅作测试
  21. # 分别向微信群、钉钉群发送告警信息
  22. print(requests.post(api_url_wx,json.dumps(json_text),headers=headers).content)
  23. print(requests.post(api_url_dd,json.dumps(json_text),headers=headers).content)
  24. if __name__ == '__main__':
  25. text = sys.argv[1]
  26. msg(text)

  脚本创建完成之后是没有可执行权限的,添加一下权限,因为脚本调用需要用到:

  1. $ chmod +x wxboot.py

  测试一下监控脚本:

  1. [root@mr13 alertscripts]# python3 wxboot.py 测试内容

  OK,测试通过,脚本可用;
  
  
  我们继续修改zabbix配置文件,更改脚本村路径位置配置:

  1. [root@mr13 ~]# vim /etc/zabbix/zabbix_server.conf

  修改保存后,重启zabbix服务生效。

  1. $ systemctl restart zabbix-server.service

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注