博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
zabbix创建钉钉报警
阅读量:5736 次
发布时间:2019-06-18

本文共 2044 字,大约阅读时间需要 6 分钟。

简介

家里搭建了zabbix去监控主机,邮件报警什么的都太麻烦了,所以直接使用钉钉机器人来提醒,下面是我的记录

创建群聊

首先钉钉机器人只有在群聊之中才可以创建,所以你就需要创建一个钉钉群,首先你创建一个三个人的群聊,创建完成之后把别人踢出去就可以了,这样就是你和钉钉机器人两个人的群聊,之后在电脑上获取钉钉机器人的webhook备用

编写报警脚本

#!/usr/bin/python# -*- coding: utf-8 -*-# Author: bboysoulimport requestsimport jsonimport sysimport os headers = {'Content-Type': 'application/json;charset=utf-8'}api_url = "" def msg(text):    json_text= {     "msgtype": "text",        "at": {            "atMobiles": [                "你的手机号码"            ],            "isAtAll": False        },        "text": {            "content": text        }    }    print requests.post(api_url,json.dumps(json_text),headers=headers).content     if __name__ == '__main__':    text = sys.argv[1]    msg(text)

上面的api_url就是你的钉钉机器人webhook地址,之后把这个脚本放到机器的alertscripts目录下面具体路径为

/usr/lib/zabbix/alertscripts

添加可执行权限

chmod +x dingding.py

因为我是使用docker搭建的,所以上面的操作都要在容器里面操作

docker exec -it zabbix-server /bin/bash

接着安装python-pip和requests库

yum install epel-release

yum install python-pip

pip install requests

创建报警媒介

在下面这个界面创建报警媒介

填入相关信息

点击添加添加成功

配置用户

之后点击管理->用户->选择你要告警的用户,这里我是直接使用admin用户了

选择报警媒介,收件人随便写

配置动作

最后我们配置动作

点击配置-> 动作->创建动作

名称随便写

点击触发器名称选择触发器警示度,之后选择大于等于警告,接着选择添加,点击一起用

选择操作

默认标题填

服务器:{HOST.NAME}发生: {TRIGGER.NAME}故障!

消息内容填

{告警主机:{HOST.NAME}告警地址:{HOST.IP}监控项目:{ITEM.NAME}监控取值:{ITEM.LASTVALUE}告警等级:{TRIGGER.SEVERITY}当前状态:{TRIGGER.STATUS}告警信息:{TRIGGER.NAME}告警时间:{EVENT.DATE} {EVENT.TIME}事件ID:{EVENT.ID}}

操作细节选择发送消息,群组和用户选择你要发送消息的群组和用户点击添加

之后点击恢复操作

标题写

服务器:{HOST.NAME}: {TRIGGER.NAME}已恢复!

消息内容写

{告警主机:{HOST.NAME}告警地址:{HOST.IP}监控项目:{ITEM.NAME}监控取值:{ITEM.LASTVALUE}告警等级:{TRIGGER.SEVERITY}当前状态:{TRIGGER.STATUS}告警信息:{TRIGGER.NAME}告警时间:{EVENT.DATE} {EVENT.TIME}恢复时间:{EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}持续时间:{EVENT.AGE}事件ID:{EVENT.ID}}

操作也是和上面一样点击新的,添加即可

点击更新操作

标题填

服务器:{HOST.NAME}: 报警确认

消息内容写

{确认人:{USER.FULLNAME} 时间:{ACK.DATE} {ACK.TIME} 确认信息如下:"{ACK.MESSAGE}"问题服务器IP:{HOSTNAME1}问题ID:{EVENT.ID}当前的问题是: {TRIGGER.NAME}}

测试

最后就是测试环节,停掉监控的任何一个主机的zabbix-agent进程,之后我们看有没有收到报警信息,如果没有,可以登录数据库查看alerts表里面error字段的信息

欢迎关注Bboysoul的博客

Have Fun

转载地址:http://mkwzx.baihongyu.com/

你可能感兴趣的文章
微博自动化测试
查看>>
Sublime Text 2.0.2,Build 2221注册码
查看>>
js scroll事件
查看>>
day08 文件操作
查看>>
最长递增子序列 动态规划
查看>>
使用列表
查看>>
原生CSS设置网站主题色—CSS变量赋值
查看>>
webpack 4.0 中 clean-webpack-plugin 的使用
查看>>
数据库神器:Navicat Premium
查看>>
WPF
查看>>
Best website for Photogrammetry
查看>>
中文词频统计
查看>>
POJ 2236 Wireless Network (并查集)
查看>>
python分类
查看>>
linux 中常见的压缩和解压缩的命令
查看>>
GitBlit (1)-- 在linux 安装 GitBlit 并运行
查看>>
Windows与Linux之间的文件自动同步
查看>>
topcoder srm 714 div1
查看>>
20160215
查看>>
mxnet导入图像数据
查看>>