@Mr-13
2020-10-13T10:10:07.000000Z
字数 1579
阅读 69
zabbix
企业微信群,邮件点击“添加群机器人”,如下图:
需要安装python,参考:CentOS7.4安装Python3.7
配置zabbix脚本,先去看一下配置文件里设置的zabbix脚本存放位置:
$ vim /etc/zabbix/zabbix_server.conf
# AlertScriptsPath 配置节就是该设置项
看一下当前脚本目录下是否已经存在其他脚本文件:
如上图,默认配置下,目录中是没有其他脚本文件的;那么为了后期维护方便,我们集中把脚本文件目录设置为 /data/zabbix_scripts/alertscripts
,过程如下:
[root@mr13 ~] mkdir -p /data/zabbix_scripts/alertscripts # 逐级创建目录
[root@mr13 ~] cd /data/zabbix_scripts/alertscripts # 进入目录
[root@mr13 alertscripts] touch wxboot.py # 创建脚本文件
因为需要用到 requests
,需要pip3安装一下
[root@mr13 ~]# pip3 install requests
编辑wxboot.py内容如下:
#!/usr/bin/python3
#-*- coding: utf-8 -*-
import requests
import json
import sys
import os
headers = {'Content-Type': 'application/json;charset=utf-8'}
# api_url 的值是群机器人时生成的webhook地址,这里根据实际情况进行设置
# api_url_wx : 微信群机器人webhook地址
# api_url_wx : 钉钉群机器人webhook地址
api_url_wx='https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=f33efdc6-13cc-40e4-a3d5-9af3743ed5e2'
api_url_dd='https://oapi.dingtalk.com/robot/send?access_token=f9c4a2640d065ed042b23e9d33bd39dacb04f4558460c6802ffeda0f643a0784'
def msg(text):
json_text= {
"msgtype": "text",
"text": {
"content": text
},
}
# 正式环境部署的时候,不需要print,这里仅作测试
# 分别向微信群、钉钉群发送告警信息
print(requests.post(api_url_wx,json.dumps(json_text),headers=headers).content)
print(requests.post(api_url_dd,json.dumps(json_text),headers=headers).content)
if __name__ == '__main__':
text = sys.argv[1]
msg(text)
脚本创建完成之后是没有可执行权限的,添加一下权限,因为脚本调用需要用到:
$ chmod +x wxboot.py
测试一下监控脚本:
[root@mr13 alertscripts]# python3 wxboot.py 测试内容
OK,测试通过,脚本可用;
我们继续修改zabbix配置文件,更改脚本村路径位置配置:
[root@mr13 ~]# vim /etc/zabbix/zabbix_server.conf
修改保存后,重启zabbix服务生效。
$ systemctl restart zabbix-server.service