alertmanager钉钉报警_钉钉pc客户端

(7) 2024-09-22 20:01:01

今天继续给大家介绍Linux运维相关知识,本文主要内容是zabbix钉钉报警实战。

一、钉钉机器人创建

要实现zabbix的钉钉报警,我们首先要设置一个钉钉群,然后申请一个钉钉群机器人。在钉钉群中,点击右上角的设置按钮,进入群设置页面,点击智能群助手,如下所示:
alertmanager钉钉报警_钉钉pc客户端 (https://mushiming.com/)  第1张
点击后选择添加机器人,如下所示:
alertmanager钉钉报警_钉钉pc客户端 (https://mushiming.com/)  第2张
选择自定义,如下所示:
alertmanager钉钉报警_钉钉pc客户端 (https://mushiming.com/)  第3张
设置自定义机器人的名称,以及自定义关键词,自定义关键词的设置要注意,一旦设置,那么在zabbix的报警信息中必须含有该关键词,才会在钉钉群聊中出现报警信息,相关配置如下所示:
alertmanager钉钉报警_钉钉pc客户端 (https://mushiming.com/)  第4张
完成设置后,会出现该机器人的Webhook码,如下所示:
alertmanager钉钉报警_钉钉pc客户端 (https://mushiming.com/)  第5张
我们记录下该地址,并妥善保存。这样,我们的钉钉设置就完成了。

二、zabbix server设置

在完成上述操作后,我们来编写zabbix钉钉报警的脚本,脚本内容如下所示:

#!/usr/bin/env python #coding:utf-8 #zabbix钉钉报警 import requests,json,sys,os,datetime webhook="https://oapi.dingtalk.com/robot/send?XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" #说明:这里改为自己创建的机器人的webhook的值 user=sys.argv[1] text=sys.argv[3] data={ 
    "msgtype": "text", "text": { 
    "content": text }, "at": { 
    "atMobiles": [ user ], "isAtAll": False } } headers = { 
   'Content-Type': 'application/json'} x=requests.post(url=webhook,data=json.dumps(data),headers=headers) if os.path.exists("/usr/local/zabbix/log/dingding.log"): f=open("/usr/local/zabbix/log/dingding.log","a+") else: f=open("/usr/local/zabbix/log/dingding.log","w+") f.write("\n"+"--"*30) if x.json()["errcode"] == 0: f.write("\n"+str(datetime.datetime.now())+" "+str(user)+" "+"发送成功"+"\n"+str(text)) f.close() else: f.write("\n"+str(datetime.datetime.now()) + " " + str(user) + " " + "发送失败" + "\n" + str(text)) f.close() 

在上述脚本中,我们需要进行改动的也只有webhook,将其修改为钉钉机器人的具体值。由于此脚本也是使用了python的request模块,因此该脚本在使用时,也需要下载好request模块。
完成脚本编写后,我们也需要给该脚本授予可执行权限,并配置好zabbix server端的配置文件。
之后,我们需要在zabbix的web页面上进行配置,建立模板——动作,定义报警媒介等等。相关操作在zabbix详解(七)——zabbix邮件报警设置一文中已经详解介绍,在这里就不过多赘述了。
但是,由于我们设置了自定义关键词,因此,我们在动作中,设置报警信息时,必须有该关键词,我的模板设置如下所示:
alertmanager钉钉报警_钉钉pc客户端 (https://mushiming.com/)  第6张

三、效果检验

最后,让我们来检验一下刚才配置的结果。
触发zabbix的报警,查看zabbix是否正常进行报警,结果如下:
alertmanager钉钉报警_钉钉pc客户端 (https://mushiming.com/)  第7张
可以看到,zabbix按照脚本中的内容,完成了报警,zabbix钉钉报警实战成功!
原创不易,转载请说明出处:https://blog.csdn.net/weixin_

THE END

发表回复