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

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

文章目录
  • 🏆前言
    • 🥈定义监控项介绍
  • 🥇任务
    • 🥈客户端
      • 🥉取值
      • 🥉配置
    • 🥈服务端
      • 🥉测试
    • 🥈web页面
      • 🥉添加监控项
      • 🥉添加触发器
      • 🥉添加报警媒介
        • qq邮箱生成smtp码
      • 🥉设置用户和报警媒介
      • 🥉添加动作
  • 🥇测试告警和恢复告警

🏆前言

  有的时候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包杀掉;

等待发送邮件和告警



告警就成功了

接下来就是恢复告警了


这样整套自定义监控就完成啦,包括发送邮件告警。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/719550.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-25
下一篇 2022-04-25

发表评论

登录后才能评论

评论列表(0条)

保存