当前位置: 首页 > news >正文

Zabbix 配置钉钉告警

Zabbix 配置钉钉告警

随着企业IT运维需求的不断增加,及时、准确地获取系统告警信息显得尤为重要。在众多告警工具中,Zabbix 因其强大的监控功能和灵活的告警机制,成为了很多企业的首选。同时,随着企业内部沟通工具的多样化,利用钉钉(DingTalk)这种即时通讯工具来接收告警信息,已经成为一种高效的解决方案。

在这里插入图片描述

本文旨在介绍如何在 Zabbix 中配置钉钉告警。通过该配置,您可以在监控系统出现问题时,第一时间通过钉钉收到告警通知,从而快速采取相应措施,减少因故障带来的损失。

zabbix环境信息

节点IPOS
zabbix-server192.168.72.31Ubuntu 22.04
zabbix-agent01192.168.72.32Ubuntu 22.04

zabbix 版本: v7.0.0

创建钉钉组织

创建钉钉群组要求加入一定数量的成员,在测试环境使用已有钉钉群组不太方便,这里新建一个空的组织来测试钉钉告警。

点击钉钉左上角,选择组织/团队,选择创建或加入企业/团队。
在这里插入图片描述

选择:没有使用立即创建
在这里插入图片描述
补充企业信息
在这里插入图片描述
点击完成
在这里插入图片描述
切换到新组织,进入全员群聊,在群设置中找到机器人
在这里插入图片描述
选择添加机器人
在这里插入图片描述
选择自定义webhook
在这里插入图片描述
填写机器人名字,配置群组和安全设置
在这里插入图片描述
记录webhook地址
在这里插入图片描述
示例地址如下:

https://oapi.dingtalk.com/robot/send?access_token=abd34fc5bf9aa952cd06c4e99b8f9c0f5f95aa70884b46dd2ade66f85d061602

配置zabbix server

连接到zabbix sever节点,创建钉钉告警脚本,只需替换webhook地址参数即可。

root@zabbix-server:~# vim /usr/lib/zabbix/alertscripts/dingding.py
#!/usr/bin/env python3
#coding:utf-8
#zabbix钉钉报警
import requests,json,sys,os,datetime
webhook="https://oapi.dingtalk.com/robot/send?access_token=abd34fc5bf9aa952cd06c4e99b8f9c0f5f95aa70884b46dd2ade66f85d061602"
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("/var/log/zabbix/dingding.log"):f=open("/var/log/zabbix/dingding.log","a+")
else:f=open("/var/log/zabbix/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()

赋予脚本执行权限

chmod +x /usr/lib/zabbix/alertscripts/dingding.py

创建日志文件:

touch /var/log/zabbix/dingding.log
chown zabbix.zabbix /var/log/zabbix/dingding.log

安装python 请求模块

apt update -y
apt install -y python3-pip
pip3 install requests

报警测试,要写三个参数并且带关键字"告警"

root@zabbix-server:~# cd /usr/lib/zabbix/alertscripts/
root@zabbix-server:/usr/lib/zabbix/alertscripts# ./dingding.py this is "告警测试,请注意"
root@zabbix-server:/usr/lib/zabbix/alertscripts# 

查看收到的告警信息
在这里插入图片描述

配置zabbix web

创建媒介

在这里插入图片描述
配置脚本参数如下:

{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}

添加动作

创建动作
在这里插入图片描述
触发条件配置如下
在这里插入图片描述

配置操作
在这里插入图片描述
自定义消息内容如下:

Problem: {EVENT.NAME}-=【告警】=-
告警组:{TRIGGER.HOSTGROUP.NAME}
告警主机:{HOSTNAME1} 
告警主机别名:{HOST.NAME}
主机IP:{HOST.IP}
主机描述:{HOST.DESCRIPTION}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
警报类别:{TRIGGER.NAME}
当前状态:{ITEM.LASTVALUE}
告警平台:http://192.168.72.31/zabbix

说明:告警平台地址为zabbix-server地址。

配置恢复操作
在这里插入图片描述
自定义消息内容如下:

Resolved:{EVENT.NAME}-=【告警取消啦】=-
恢复主机:{HOSTNAME1}
恢复时间:{EVENT.DATE} {EVENT.TIME}
主机IP:{HOST.IP}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}

动作操作配置完成后如下所示
在这里插入图片描述

为用户配置告警媒介,选择用户,admin,切换到告警媒介
在这里插入图片描述

测试报警效果

在zabbix-agent01节点安装stress-ng工具,使用stress-ng进行压测,触发告警负载过高事件

apt install -y stress-ng
stress-ng --cpu 8 --vm 8

等待5分钟,在zabbix-server控制台查看产生的告警事件,并且状态显示已送达。
在这里插入图片描述
或者查看动作日志信息
在这里插入图片描述

在钉钉上查看收到的告警信息及告警恢复信息
在这里插入图片描述

解散钉钉企业

如果需要解散钉钉企业,选择更多,管理后台
在这里插入图片描述
在企业设置中,解散企业即可
在这里插入图片描述

参考:
https://developer.aliyun.com/article/1388509#slide-15
https://blog.csdn.net/2302_78534730/article/details/132709825

http://www.lryc.cn/news/390891.html

相关文章:

  • TTL转RS232与USB转TTL
  • 【力扣 896】单调数列 C++题解(循环)
  • 代码随想录Day71(图论Part07)
  • [Mdp] lc 494. 目标和(01背包变种+dp+dfs)
  • React vs Vue:谁是构建现代Web应用的王者?
  • Linux CentOS 宝塔中禁用php8.2的eval函数详细图文教程
  • Matlab 中 fftshift 与 ifftshift
  • 被裁了(9年)
  • 13. Revit API: Filter(过滤器)
  • hadoop 3.X 分布式HA集成Kerbos(保姆级教程)
  • VDS虚拟导播切换台软件
  • UE4_材质_使用彩色半透明阴影
  • arthas监控工具笔记(二)monior等
  • 【mybatis】mybatis-plus中主键生成策略
  • 模型情景制作-如何制作棕榈树
  • # mysql 中文乱码问题分析
  • [小试牛刀-习题练]《计算机组成原理》之指令系统
  • JAVA 实现拍卖框架及拍卖详情流程介绍(包含代码示咧)
  • 力扣1177.构建回文串检测
  • Vue跨域获取ip和ip位置城市等归属地信息
  • 缺失的第一个正数
  • mac 上 Docker Desktop的免费开源的替代工具Colima
  • C语言 -- 函数
  • Cesium 立式雷达扫描
  • Oracle HTTP Server(OHS)与Oracle数据库的紧密绑定
  • mmcv安装失败及解决方案
  • 国产强大免费WAF, 社区版雷池动态防护介绍
  • 【Django】网上蛋糕项目商城-首页
  • Vue 父子页面使用指南
  • TVBox自定义配置+软件密码版本