ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

生产centos7.6实战部署 zabbix4.0 通过 钉钉 发送告警信息

2021-06-07 22:05:41  阅读:212  来源: 互联网

标签:NAME text ID 告警信息 TRIGGER 告警 zabbix4.0 EVENT centos7.6


环境:
zabbix版本:4.0 LTS

系统版本: CentOS 7.6

Python版本: 3.6.0
一、添加Media Types
在这里插入图片描述

Name:自定义的媒介名称

Type:Scipt 脚本

Scipt name : 脚本名称

Scipt parameters : 传递给脚本的参数。(该参数可以在后面的Actions部分自定义)。这里我们就使用了一个内建参数{ALERT.MESSAGE}。
二、添加Users
这里我们使用已有的Admin账户来关联告警媒介DingTalk
在这里插入图片描述
在这里插入图片描述
点击添加按钮,弹出如下

在这里插入图片描述

Type: 选择前面定义的 Ding Talk

Send to : 任意填写什么内容。(本来这个内容与媒介内建变量{ALERT.SENDTO}对应,但是我们前面没有使用就不管它。)
三、添加Actions
本部分定义发送消息的具体内容以及在什么情况下发送消息。

这里我们选择与Triger进行关联,即在某些Triger触发的情况下执行发送动作
在这里插入图片描述
输入自定义的动作名称,添加一个新条件,这里是 触发级别 大于等于 平均 ,记得点击Add按钮
在这里插入图片描述

操作(Operations):

标题:服务器:{HOST.NAME}发生: {TRIGGER.NAME}故障!
内容:
{
告警主机:{HOST.NAME}
告警信息:{TRIGGER.NAME}
告警项目:{ITEM.NAME}
告警时间:{EVENT.DATE}_{EVENT.TIME}
当前状态:故障 值={ITEM.VALUE}
故障已持续{EVENT.AGE},请尽快处理
事件ID:{EVENT.ID}
}

恢复操作 (Revovery Operations):

标题:服务器:{HOST.NAME}: {TRIGGER.NAME}已恢复!
内容:
{
告警信息:{TRIGGER.NAME}
告警项目:{ITEM.NAME}
告警时间:{EVENT.DATE}{EVENT.TIME}
恢复时间:{EVENT.RECOVERY.DATE}
{EVENT.RECOVERY.TIME}
当前状态:{TRIGGER.STATUS} 值={ITEM.VALUE}
故障共持续{EVENT.AGE}
事件ID:{EVENT.ID}
}

确认操作(Update Operations) :

标题:服务器:{HOST.NAME}: 报警确认!
内容:
{
确认信息:"{ACK.MESSAGE}"
服务器:{HOST.NAME}发生: {TRIGGER.NAME}故障!
确认人:{USER.FULLNAME}
时间:{ACK.DATE} {ACK.TIME}
当前的问题是: {TRIGGER.NAME}
时间ID:{EVENT.ID}
}
这里我们介绍Operations
在这里插入图片描述
设置完Default message后,点击New添加新的条件,主要是设置告警
四、注册钉钉

1.注册钉钉账户

2.创建一个群。

3.创建机器人
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

输入机器人名字
在这里插入图片描述

在这里插入图片描述
记住这个webhook,后面告警脚本需要用到

五、添加告警脚本
脚本路径在zabbix_server.conf文件里面所指定AlertScriptsPath目录下。

脚本AlertDingTalk.py如下:
#!/usr/bin/python

-- coding: utf-8 --

import requests
import json
import sys
import os

headers = {‘Content-Type’: ‘application/json;charset=utf-8’}
api_url = “https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxxxxxxxxxxxxx” #填入上面得到的webhook

def msg(text):
json_text= {
“msgtype”: “text”,
“text”: {
“content”: text
},
“at”: {
“atMobiles”: [
“xxxxxxxxxxxxx”
],
“isAtAll”: False
}
}
print(requests.post(api_url,json.dumps(json_text),headers=headers).content)

if name == ‘main’:
text = sys.argv[1]
msg(text)
五、测试
停掉客户端的zabbix-agent,即可收到如下告警消息
在这里插入图片描述

标签:NAME,text,ID,告警信息,TRIGGER,告警,zabbix4.0,EVENT,centos7.6
来源: https://blog.csdn.net/qq_39418469/article/details/117675409

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有