调用钉钉群组机器人在当前群组发送Zabbix报警信息

关于钉钉机器人的创建,基本用法详见我另一篇文章《创建自定义机器人

本实验测试zabbix版本为3.4

接下来我们将直接通过下面的操作完成zabbix报警往我们的钉钉机器人所在群组发送:

首先在附件中下载对应的程序到我们的zabbix server的AlertScriptsPath目录,可以通过以下命令查看目录所在位置

grep "AlertScriptsPath" zabbix_server.conf

更改文件的权限为运行zabbix的用户,并给执行权限

chmod 755 golang-zabbix-robot-64
chown zabbix:zabbix  golang-zabbix-robot-64

测试程序是否能正常运行

#将webhook更改为自己机器人的
./golang-zabbix-robot-64 -webhook="https://oapi.dingtalk.com/robot/send?access_token=8b0f49960a8f01766343bad90ae26d12488b2a8a233ad417cc095030304907e3"

然后我们就要开始配置我们的zabbix

  1. 创建报警媒介

    注意:log文件需要自己手工创建

    touch /tmp/dingding.log

    chown zabbix:zabbix /tmp/dingding.log

  2. 给用户添加报警媒介

    注意:收件人处随便写都可以

  3. 在报警动作中使用此媒介这里只展示报警信息和恢复信息,其它配置还希望能自行学习

    以下为报警的信息

    以下为恢复信息

    注意:默认接收人都随便写就行了

以下为报警信息

<?xml version="1.0" encoding="UTF-8" ?>
<root>
  <from>{HOSTNAME1}</from>
  <time>{EVENT.DATE} {EVENT.TIME}</time>
  <level>{TRIGGER.SEVERITY}</level>
  <name>{TRIGGER.NAME}</name>
  <key>{TRIGGER.KEY1}</key>
  <value>{ITEM.VALUE}</value>
  <now>{ITEM.LASTVALUE}</now>
  <id>{EVENT.ID}</id>
  <ip>{HOST.IP}</ip>
  <url>http://zabbix.gogen.cn</url>
  <age>{EVENT.AGE}</age>
  <status>{EVENT.STATUS}</status>
<acknowledgement> {EVENT.ACK.STATUS} </acknowledgement>
<acknowledgementhistory> {EVENT.ACK.HISTORY}</acknowledgementhistory>
</root>

以下为恢复信息

<?xml version="1.0" encoding="UTF-8" ?>
<root>
  <from>{HOSTNAME1}</from>
  <time>{EVENT.DATE} {EVENT.TIME}</time>
  <level>{TRIGGER.SEVERITY}</level>
  <name>{TRIGGER.NAME}</name>
  <key>{TRIGGER.KEY1}</key>
  <value>{ITEM.VALUE}</value>
  <now>{ITEM.LASTVALUE}</now>
  <id>{EVENT.ID}</id>
  <ip>{HOST.IP}</ip>
  <color>FF4A934A</color>
  <url>http://zabbix.gogen.cn</url>
  <age>{EVENT.AGE}</age>
  <recoveryTime>{EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}</recoveryTime>
  <status>OK</status>
</root>

恢复信息说明:<status>OK</status>默认为OK,这是3.4的zabbix server才这样做,如果你的zabbix server是3.4之前的版本请改为:<status>{EVENT.RECOVERY.STATUS}</status>

最后测试报警信息和恢复信息是否能正常发送,如果发送不成功请查看错误日志

成功后发送到钉钉信息大概如下:

时间: 2024-10-15 11:29:28

调用钉钉群组机器人在当前群组发送Zabbix报警信息的相关文章

通知神器——java调用钉钉群自定义机器人

创建群自定义机器人 在指定钉钉群(或者随便拉两个人建个群,然后把别人T出去)的群设置里选择 群机器人 -> 自定义,如图: 然后,添加机器人,设置名字,添加成功时如下图: 其中webhook非常重要,下文详述.点击设置说明可以看相关使用文档,文档链接见本文末尾. 使用HTTP POST请求发送消息 直接向上文所述的webhook链接发送POST请求已达到自定义机器人向群内发消息的功能 按照文档中所属的参数格式直接向链接发送请求即可,我使用Postman发送请求如下: 效果如下: 发送其他格式(如

用Python实现阿里钉钉机器人读取数据库内容自动发群通知

最近想把一些预警数据信息按照一定的要求自动发送到移动端APP,最终把目标放在了腾讯的微信和阿里的钉钉软件上,由于刚开始学习python,于是编程工具想用python来实现.微信使用群体最广,通过一天的研究用itchat库已经实现,但由于itchat需要用web微信方式登录,发现微信对新注册的用户关闭了web微信功能,于是考虑用备选方案阿里钉钉来实现,其实阿里钉钉虽然没有微信用户群体庞大,但是在企业应用方面比微信强大了太多,很多企业已经开始开始用钉钉作为内部沟通工具. 一.工作准备 1.Pytho

zabbix 使用机器人报警到钉钉群聊

钉钉机器人接口脚本下载:https://www.appgao.com/files/192.html 钉钉机器人接口地址(可以点击机器人查看):webhook地址,https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxx 配置报警媒介类型 配置用户报警媒介 配置用户 赋予golang-zabbix-robot-64脚本所属主组和可执行权限 配置动作 默认信息: <?xml version="1.0" encoding=&q

zabbix 配合钉钉群机器人(webhook) 报警

首先建钉钉群,添加一个自定义机器人拿到webhook zabbix添加一个报警媒介 搞一个shell脚本来启动Python脚本(直接用zabbix调Python脚本不行,不知道什么原因) vim dingding.sh echo "$1" > /tmp/dingding.log python /etc/zabbix/alertscripts/dingding.py "$1" #!/usr/bin/env python #coding: utf-8 import

python 小脚本升级-- 钉钉群聊天机器人

一则小脚本(工作中用) 在这篇文章中写的监控的脚本,发送监控的时候 是利用的邮箱,其实在实际,邮箱查收有着不方便性,于是乎升级, 我们工作中,经常用钉钉,那么如果要是能用到钉钉多好,这样我们的监控成功后直接发送给我们的钉钉,简单方便 在钉钉开发文档有这么一个地方 ,自定义机器人 这个应该能够满足我们的办公要求吧,先来实验实验,打开钉钉,选择机器人管理. 使用自定义的机器人,点击 选择群,选择生成的机器人 然后创建, 这样我们的机器人创建成功,我们去看着文档的要求去,可惜官方没有python版本,

钉钉群机器人

微信的Web网页版,很多新号都己经是用不了.所以微信的WEB协议是没法玩的了. 对于需要在一个群里自动发信息,目前也只能是用钉钉的.钉钉支持自定义机器人,说白了就是你往一个群里推送消息. 协议也比较简单,可以自行到这里看https://open-doc.dingtalk.com/microapp/serverapi2/qf2nxq.但目前还不支持问答模式(瞬间也觉得不好玩了). 自定义机器人,还有个限制,就是一分钟只能发20条.20条确实是少了点,但是一个群可以建立6个机器人,6*20就是120

nodejs通过钉钉群机器人推送消息

nodejs 通过钉钉群机器人推送消息 Intro 最近在用 nodejs 写,之前的 nodejs 爬虫代码用 js 写的,感觉可维护性太差,也没有智能提示,于是把js改用ts(typescript)重写一下,提升代码质量. 爬虫启动之后不定期会出现验证码反爬虫,需要输入验证码才能继续,于是想在需要输入验证码时推送一个消息给用户,让用户输入验证码以继续爬虫的整个流程.我们平时用钉钉办公,钉钉群有个机器人,很方便于是就实现了一个通过钉钉的群机器人实现消息推送. 实现 代码是 ts 实现的,用了

通过钉钉群聊机器人推送zabbix告警

1.首先在zabbix服务端的alertscripts目录下新建一个dingding.sh脚本,内容如下: #!/bin/bash Content=$2 curl 'https://oapi.dingtalk.com/robot/send?access_token=XXXX' \ -H 'Content-Type: application/json' \ -d ' {"msgtype": "text", "text": { "conte

TFS发布计划发送到钉钉消息群

由于工作中需要用到钉钉,每天都要和钉钉打交道:上下班打卡.出差请假流程.各种工作讨论组,不一而足,工作已然和钉钉绑在了一起,难怪有广告词: 微信是一个生活方式,钉钉是一个工作方式. 我们是钉钉机器人内测版的首批用户,使用自定义机器人功能做了预警消息推送,效果还不错,目前钉钉机器人已经正式发布,支持与Github.Gitlab.Jira等集成: 由于我们研发过程管理重度依赖微软TFS(Team Foundation Server),研发.测试及运维同学(DevOps)希望将发布计划通知到钉钉群,由