Zabbix 配置钉钉脚本告警
1.钉钉账号创建,并创建一个组,在组中添加一个机器人,然后记下webhook地址即可.
2.编辑一个报警脚本,此处使用的是BASH脚本,并覆盖我们的webhook地址到相应的位置.
[root@localhost ~]# vim send.sh
#!/bin/bash
to=$1
subject=$2
text=$3
curl 'https://oapi.dingtalk.com/robot/send?access_token=a7363009f0069f055bd403a8ef336ebac937bf350de51a8042905dd5321800' \
-H 'Content-Type: application/json' \
-d '
{"msgtype": "text",
"text": {
"content": "'"$text"'"
},
"at":{
"atMobiles": [ "'"$1"'" ],
"isAtAll": false
}
}'
3.在Linux系统下运行脚本,测试是否能够发送一个警告信息.
[root@localhost ~]# chmod +x send.sh
[root@localhost ~]# bash send.sh hello lyshark we
{"errmsg":"ok","errcode":0}
[root@localhost ~]#
4.确认过能报警以后,我们来开启Zabbix服务的脚本功能.
[root@localhost ~]# vim /usr/local/zabbix/etc/zabbix_server.conf
[root@localhost ~]# vim /etc/zabbix/zabbix_server.conf
### Option: AlertScriptsPath
# Full path to location of custom alert scripts.
# Default depends on compilation options.
# To see the default path run command "zabbix_server --help".
#
# Mandatory: no
# Default:
# AlertScriptsPath=${datadir}/zabbix/alertscripts
AlertScriptsPath=/usr/lib/zabbix/alertscripts #解除注释,找到配置项
5.把上面的send.sh文件拷贝到,上述目录下面,并设置权限.
[root@localhost ~]# cp -a send.sh /usr/lib/zabbix/alertscripts/
[root@localhost ~]# chmod 777 -R /usr/lib/zabbix/alertscripts/
[root@localhost ~]# systemctl restart zabbix-server
6.点击图形界面,选择管理->报警媒介->创建报警媒介
.
新增:{ALERT.SENDTO}{ALERT.SUBJECT}{ALERT.MESSAGE}.
7.点击图形界面,选择配置->动作->创建动作
,首先创建一个动作.
8.紧接着点击操作->配置
一下故障报警消息格式.
标题改为:
故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!
信息改为:
告警主机:{HOSTNAME1}
告警地址:{HOST.IP}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件 ID:{EVENT.ID}
继续往下看,点击新的
,配置一个报警用户组和报警使用消息.
下图表示触发5次动作,每隔120秒触发一次,告警发给 admin 用户,用钉钉媒介发送.
9.当我们配置完成一个故障报警后,下面就继续配置一个恢复后的提示.
标题改为:
恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!
信息改为:
告警主机:{HOSTNAME1}
告警地址:{HOST.IP}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件 ID:{EVENT.ID}
最终点击小add添加
选项,继续点击大ADD完成动作
增加.
10.配置告警用户,点击管理->用户->Admin->报警媒介
,修改以下内容.
最后点击更新按钮完成任务了.
11.此时我们强制关闭一个虚拟机,那么就能看到报警内容啦.
最新文章
- python学习心得第二章
- http学习笔记(三)
- 轻取帝国CMS管理员密码
- $(inherited) ";$(SRCROOT) 修改.a文件的路径 --Library Search Paths
- Web上的支持的图片格式以及它们之间的区别
- 重拾smslib
- WPF Wonders: Transformations (and Robots!)
- ifrog-1028 Bob and Alice are playing numbers(trie树)
- Java基础-代理
- 使用 GDB 调试多进程程序
- zImage.img、ramdisk.img、system.img、userdata.img介绍及解包、打包方法
- IE下easyui 缓存问题
- jquery让一个点击事件刷新页面就自己执行一次的方法
- javascript事件详解1
- std::vector 源代码
- Server from URL
- C# Winform 实现Ajax效果自定义按钮
- git 命令和使用场景总结
- studio多渠道打包
- LCA的两种写法
热门文章
- 修复Long类型太长转为JSON格式的时候出错的问题
- 20165213 Exp6 信息搜集与漏洞扫描
- php phpexcel 创建excel
- 打开新窗口(window.open)关闭窗口(window.close)
- python 面对对象 类(继承, 多态)
- AndroidManifest.xml中的<;uses-feature>;以及和<;uses-permission>;之间的联系
- add_header &#39;Cache-Control&#39; &#39;no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0&#39;
- flutter 单例
- 小D课堂 - 新版本微服务springcloud+Docker教程_汇总
- DEDECMS 漏洞汇总