zabbix - 对接钉钉机器人接口51CTO博客 - 超凡娱乐

zabbix - 对接钉钉机器人接口51CTO博客

2019-01-03 10:41:42 | 作者: 觅波 | 标签: 机器人,报警,创立 | 浏览: 1681


一:下载发送程序 

zabbix 钉钉报警机器人 - 向钉钉群聊中发送报警音讯 (go言语写的脚本,可用 -h检查选项)

测验:

./golang-zabbix-robot-64  -webhook=https://oapi.dingtalk.com/roboxxxxxxxx

此刻你的机器人会发送一个来自于千思网的音讯,此刻阐明golong可用。

接下来就要区别你的zabbix的版别了,以下分别是3.0 3.2 2.4的装备方法


二:zabbix3.0 装备 

1、布置程序

将go脚本复制至效劳端正告目录AlertScriptspath下,增加履行权限。


2、创立报警前言


3、增加用户或组,参加报警前言


4、创立动作,创立触发发送条件


三:zabbix3.2 装备

3.2和3.0装备大致相同,仅仅有部分会发作音讯送不到的状况,测验将上述xml格局的换行去掉后从头测验。

附录:

报警信息

<?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>这儿是点击报警音讯能够拜访的链接地址</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>这儿的url会替换报警前言的url</url>  <age>{EVENT.AGE}</age>  <recoveryTime>{EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}</recoveryTime>  <status>{EVENT.RECOVERY.STATUS}</status> </root>


四:zabbix 2.4 装备

相对于3版别,2.4 虽经典可是却有点跟不上年代了,公司为了保持稳定,也不敢轻率晋级,所以只能对 2.4进行相应的装备了。

1、布置程序

同样在正告目录AlertScriptspath下,增加脚本 zabbix-dingding.sh

#!/bin/bash

webhook="https://oapi.dingtalk.com/robot/send?access_token=xxx"

/zabbix/share/zabbix/alertscripts/golang-zabbix-robot-64 -webhook=$webhook -msg="$3"


2、创立报警前言


3、创立用户或组,参加报警前言,同上

4、创立动作,创立触发发送条件,选用3.2格局,不换行

-----------------------------------------------------------------------------------------

附加:通用机器人

有时咱们会用自定义的监控脚本,去监控效劳状况,或许某个程序等等,怎样对接到钉钉呢?

#!/usr/bin/env python
#coding=utf-8
import urllib
import urllib2
import json
import re
f = open(xxxxxxxxxx,r)   #取文件的内容发送
your_data = f.read()
f.close()
#print your_data
headers = {Content-Type: application/json}
test_data = {
     msgtype:"text",
     "text":{
       content:"%s" % your_data
}, 
     "at":{
     "atMobiles":[
     # "you iphone"
     ],
     "isAtAll":"false"
}
}
#requrl = "https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxxxxxxxxxxxxxxxxx"
req = urllib2.Request(url = requrl,headers = headers,data = json.dumps(test_data))
response = urllib2.urlopen(req)




版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表超凡娱乐立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章