zabbix添加自定义监控项&告警(邮件)

简介: 有的时候zabbix提供的监控项目,不能满足我们生产环境下的监控需求,此时我们就要按照zabbix的规范自定义监控项目,来达到监控的目的。

@[toc]

🏆前言

  有的时候zabbix提供的监控项目,不能满足我们生产环境下的监控需求,此时我们就要按照zabbix的规范自定义监控项目,来达到监控的目的。

🥈定义监控项介绍

监控项就是监控项目,监控指标,具体的监控内容。
在添加主机时我们会选择关联模板,模板中自带很多监控项,但是很多时候我们需要监控的监控项模板中没有,此时需要自定义监控项。

** 自定义监控项的步骤可以分为:取值,配置,测试,添加。

取值和配置在客户端进行,测试在服务端进行,添加在web页面进行
**

🥇任务

下面给大家举例一个:自定义监控一个进程,如果监控到该进程则不报警;如果没有监控到,则报警发送邮件;如果报警处理后,恢复监控,则通知发送邮件。

🥈客户端

🥉取值

ps -ef | grep -v grep | grep -E cs.jar | wc -l
1

🥉配置

在被监控端的agent配置文件中添加配置

#进入zabbix客户端
vi /etc/zabbix/zabbix_agentd.conf

#寻找UserParameter=键,监测脚本或者命令
#zabbix监控项是以键值对的形式定义的,cs为键,也就是监控项的名称,取值命令为值;
#大概在296行,添加
UserParameter=cs,ps -ef | grep -v grep | grep -E cs.jar | wc -l

#保存退出,重启客户端
systemctl restart zabbix-agent.service

🥈服务端

先看看服务端有没有安装zabbix-get这个命令,没有的话,安装一下即可

yum -y install zabbix-get

zabbix_get:模拟zabbix_server获取agent数据

🥉测试

测试在服务端使用zabbix_get命令实现

#-s    指定客户端ip
#-k    指定客户端配置文件里设置的键
[root@localhost ~]# zabbix_get -s 192.10.2.112 -k cs
1

这时服务端是可以获取到客户端的值的,说明配置成功,配置完之后必须要重启客户端;然后接下来就是添加监控项;

注意:不管取到0或者1都是配置成功了,如果没有配置成功会报错:ZBX_NOTSUPPORTED: Unsupported item key.;

🥈web页面

🥉添加监控项

1.登陆web界面,配置——主机——创建主机
在这里插入图片描述
选择主机,并填写以下红框部分。主机名称:与agent配置文件中Hostname保持一致,可见名称:自定义,群组:选择一个或者新建一个,ip地址:一般为内网ip,如果需要走公网监控则填写公网ip
在这里插入图片描述

2.监控项——创建监控项
主机里要选中你监控的那台客户端
在这里插入图片描述
在这里插入图片描述
按下图进行填写,最后选择添加即可
在这里插入图片描述
3.查看监控项的结果
监测——最新数据
在这里插入图片描述
在这里插入图片描述

🥉添加触发器

监控项创建完我们来创建触发器
点击触发器
在这里插入图片描述
创建触发器
在这里插入图片描述
按照下图来做就可以
还是设置0比较好,>1的话有点问题。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
恢复表达式同样,只不过结果有些不同,可以写成=1就恢复。
在这里插入图片描述
在这里插入图片描述

🥉添加报警媒介

管理——报警媒介类型
在这里插入图片描述
可以选择Email
在这里插入图片描述
在这里插入图片描述

注意:密码不是你的163或者qq密码,是邮箱内的smtp码,这里我们来用qq邮箱来举例

qq邮箱生成smtp码

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
发送短信,获取授权码,返回zabbix放到密码里就ok了。
在这里插入图片描述
生成smtp码之后,填写密码,保存即可。

🥉设置用户和报警媒介

管理——用户
在这里插入图片描述
用户直接用超级管理员即可
在这里插入图片描述
添加报警媒介
在这里插入图片描述
可以用qq邮箱,也可以用163邮箱
在这里插入图片描述
点击添加,完成
在这里插入图片描述
切记一定要点添加或者更新。

🥉添加动作

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
我们来勾选Custom message,告警和恢复的主题和消息,我们放到了这两张图的下面。

故障:
在这里插入图片描述

恢复:
在这里插入图片描述

故障:

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

告警主机:{HOST.NAME}
告警主机IP地址:{HOST.IP}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}

恢复:

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

恢复主机:{HOST.NAME}
恢复主机IP地址:{HOST.IP}
恢复时间:{EVENT.DATE} {EVENT.TIME}
恢复等级:{TRIGGER.SEVERITY}
恢复信息: {TRIGGER.NAME}
恢复项目:{TRIGGER.KEY1}
恢复问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}

在这里插入图片描述
在这里插入图片描述

至此就配置完成,我们开始测试

🥇测试告警和恢复告警

为了测试我先把jar包杀掉;
在这里插入图片描述
等待发送邮件和告警
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
告警就成功了

接下来就是恢复告警了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

这样整套自定义监控就完成啦,包括发送邮件告警。
在这里插入图片描述

目录
相关文章
|
4月前
|
存储 SQL 监控
修改Zabbix源码实现监控数据双写,满足业务需求!
虽然对接Elasticsearch后有诸多好处,但是它不往数据库写历史数据了,同时还不再计算趋势数据了。有这么一个场景...
修改Zabbix源码实现监控数据双写,满足业务需求!
|
5月前
|
数据采集 监控 数据库
OceanBase社区版可以通过Zabbix监控
OceanBase社区版可以通过Zabbix监控
85 4
|
5月前
|
监控 关系型数据库 机器人
小白带你学习linux的监控平台zabbix
小白带你学习linux的监控平台zabbix
141 0
|
7月前
|
监控 关系型数据库 MySQL
企业实战(8)CentOS 6.8安装Zabbix-agent 5.0监控主机性能与Mysql数据库
企业实战(8)CentOS 6.8安装Zabbix-agent 5.0监控主机性能与Mysql数据库
|
28天前
|
监控 网络协议 Unix
centos7 zabbix安装客户端agent -配置监控远程主机 在需要监控的电脑上安装
centos7 zabbix安装客户端agent -配置监控远程主机 在需要监控的电脑上安装
19 0
|
2月前
|
数据采集 监控 数据库
请问OceanBase社区版能否通过zabbix监控,然后将报错信息展现到grafana?
【2月更文挑战第25天】请问OceanBase社区版能否通过zabbix监控,然后将报错信息展现到grafana?
26 2
|
7月前
|
监控
zabbix如何添加自定义监控项
zabbix如何添加自定义监控项
272 0
|
3月前
|
监控 Cloud Native 关系型数据库
使用 Grafana 统一监控展示 - 对接 Zabbix
使用 Grafana 统一监控展示 - 对接 Zabbix
|
5月前
|
监控 Docker 容器
Zabbix【部署 03】zabbix-agent2安装配置使用(zabbix-agent2监控docker实例分享)
Zabbix【部署 03】zabbix-agent2安装配置使用(zabbix-agent2监控docker实例分享)
262 0
|
5月前
|
监控 Java
Zabbix【部署 02】Zabbix-Java-Gateway安装配置使用(使用Zabbix-Java-Gateway通过JMX监控Java应用程序实例分享)
Zabbix【部署 02】Zabbix-Java-Gateway安装配置使用(使用Zabbix-Java-Gateway通过JMX监控Java应用程序实例分享)
91 0

推荐镜像

更多