Zabbix 配置钉钉告警功能的实现代码

 更新时间:2020年04月21日 15:31:08   作者:knight-zhou  
这篇文章主要介绍了Zabbix 配置钉钉告警功能的实现代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

需求

Zabbix配置钉钉告警和Prometheus配置钉钉告警类似。只不过Zabbix通过钉钉告警是通过Python脚本实现。而Prometheus是通过钉钉的二进制包实现。

钉钉的设置可以参看我的另外一篇博文(Prometheus 配置钉钉告警): https://knight.blog.csdn.net/article/details/105583741

我们现在主要来讲解Zabbix的设置实现

钉钉Webhook代码实现

vim /usr/local/zabbix/share/zabbix/alertscripts/dingding.py

#!/usr/bin/env python
#coding:utf-8
 
import requests,json,sys,os,datetime
webhook="https://oapi.dingtalk.com/robot/send?access_token=6e5bcfee12bc6fa7f3c6bd16b7d6c333d86266cecadd3fe5e77a29cedae9f9"   #说明:这里改为自己创建的机器人的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("/tmp/dingding.log"):
  f=open("/tmp/dingding.log","a+")
else:
  f=open("/tmp/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 dingding.py # 加执行权限
python dingding.py a b "测试"

我们看钉钉能不能收到告警(记得钉钉要加服务器的公网ip的白名单)

Zabbix的配置如下:

(1)配置报警媒介类型:

配置---> 报警媒介类型,脚本参数如下:

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

截图如下:

(2)配置动作

 配置--->动作--->创建动作,把微信告警或者邮件告警的“操作”和恢复操作内容拷贝过来即可。

(3)最后配置用户

配置--->用户---> 报警媒介,把钉钉加进来即可。 其中收件人要写自己的电话号码。

 Zabbix的配置就配置完了。我们看一下告警的效果图

总结

到此这篇关于Zabbix 配置钉钉告警的文章就介绍到这了,更多相关Zabbix 配置钉钉告警内容请搜索程序员之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持程序员之家!

相关文章

  • 关于YUM安装部署Zabbix4.4.7使用mysql数据库的问题

    关于YUM安装部署Zabbix4.4.7使用mysql数据库的问题

    这篇文章主要介绍了YUM安装部署Zabbix4.4.7使用mysql数据库的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-03-03
  • Zabbix3.4监控mongodb数据库状态的方法

    Zabbix3.4监控mongodb数据库状态的方法

    mongodb有db.serverStatus()命令,可以查看mongodb的运行状态,那么zabbix就可以调用这个命令实现mongodb的监控。这篇文章主要介绍了Zabbix3.4监控mongodb状态的方法,需要的朋友可以参考下
    2019-12-12
  • Zabbix监控多个JVM进程的方法

    Zabbix监控多个JVM进程的方法

    这篇文章主要介绍了Zabbix监控多个JVM进程的方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-09-09
  • Zabbix6通过ODBC方式监控Oracle?19C的详细过程

    Zabbix6通过ODBC方式监控Oracle?19C的详细过程

    这篇文章主要介绍了Zabbix6通过ODBC方式监控Oracle?19C最佳实践,主要包括客户端安装配置过程及数据库相关操作,本文通过图文实例相结合给大家介绍的非常详细,需要的朋友可以参考下
    2022-09-09
  • Centos 7 下的 Zabbix3.4 安装步骤详解

    Centos 7 下的 Zabbix3.4 安装步骤详解

    这篇文章主要介绍了如何在Centos7下使用yum安装Zabbix3.4,详细安装步骤请认真阅读本文
    2017-12-12
  • 使用Zabbix?5.4.3监控IPMI的方法

    使用Zabbix?5.4.3监控IPMI的方法

    默认情况下,Zabbix服务器未配置为启动任何IPMI轮询,因此任何添加的IPMI监控项将无法正常工作,接下来通过本文给大家介绍使用Zabbix?5.4.3监控IPMI的方法,感兴趣的朋友一起看看吧
    2022-01-01
  • zabbix 2.2安装步骤详细介绍

    zabbix 2.2安装步骤详细介绍

    这篇文章主要介绍了zabbix 2.2安装步骤详细介绍的相关资料,本文给大家介绍的非常详细,具有参考借鉴价值,需要的朋友可以参考下
    2016-10-10
  • Zabbix对Kafka?topic积压数据监控的问题(bug优化)

    Zabbix对Kafka?topic积压数据监控的问题(bug优化)

    这篇文章主要介绍了Zabbix对Kafka?topic积压数据监控,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • Zabbix 2.4.5自带MySQL监控的配置使用教程

    Zabbix 2.4.5自带MySQL监控的配置使用教程

    Zabbix 有自带监控 MySQL 的模板,但是却不能直接使用,下面这篇文章主要给大家介绍了关于Zabbix 2.4.5自带MySQL监控配置使用的相关资料,文中通过示例代码给大家介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-07-07
  • Zabbix实现监控多个mysql过程解析

    Zabbix实现监控多个mysql过程解析

    这篇文章主要介绍了Zabbix实现监控多个mysql过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08

最新评论

?


http://www.vxiaotou.com