添加自定义监控项目,配置邮件告警,测试告警,不发邮件的问题处理

添加自定义监控项目

例如
需求:监控某台web的80端口连接数,并出图
两步:1)zabbix监控中心创建监控项目;2)针对该监控项目以图形展现
对于第一步,需要到客户端定义脚本
[[email protected] ~]# vim /usr/local/sbin/estab.sh
#!/bin/bash
##获取80端口并发连接数
netstat -ant |grep ‘:80 ‘ |grep -c ESTABLISHED
然后给他定义权限
chmod 755 /usr/local/sbin/estab.sh

客户端上编辑配置文件 vim /etc/zabbix/zabbix_agentd.conf
然后在里面搜索UnsafeUserParameters
找到后将前面的#去掉,然后让他等于1,它的目的是使用自定义脚本
UserParameter=my.estab.count[],/usr/local/sbin/estab.sh
//自定义监控项的key为my.estab.count,后面的[
]里面写脚本的参数,如果没有参数则可以省略,脚本为/usr/local/sbin/estab.sh
重启zabbix-agent服务 systemctl restart zabbix-agent
首先到服务端验证,执行命令
zabbix_get -s 192.168.218.129 -p 10050 -k ‘my.estab.count‘
如果结果为0,那么证明你的脚本时好用的,如果不为0,则证明脚本有问题
还有一点要注意的是,我们要保持网络畅通,没有防火墙规则,没有selinux。

然后在zabbix监控中心(浏览器)配置增加监控项目


剩下的保持默认
添加完后还要给他做一个图形,点击上面的图形,然后点击最右边的创建图形。
在里面输入名称,点击下面的添加,在弹出的对话框中选择并发链接数,确定后点击再点击下面的添加,最后就可以形成新的图表了。

我们也可以给他做一个触发器,步骤基本相同
首先点击触发器,然后点击最右边的创建触发器,
然后在里面输入名字,然后点击下面,选择严重性,然后点击下面的添加

这里监控项在弹出的对话框中选择,功能通过点击向下的箭头选择,n=自定义的数值。最后点击添加。

配置邮件告警

使用163或者QQ邮箱发告警邮件
首先进入163邮箱,然后在设置页面中选择

然后在里面设置

然后设置客户端授权码,这个密码要尽量复杂,确保安全。

然后我们进入zabbix监控页面,进行邮箱报警设置

这里面虽然还有邮箱报警的选项,但是我们不需要那个,我们要重新创建一个邮箱报警。
将里面的选项逐一填写

然后我们去设定一个脚本,这个脚本要放到/usr/lib/zabbix/alertscripts下
首先进入到目录下
[[email protected] ~]# cd /usr/lib/zabbix/alertscripts
[[email protected] alertscripts]# vim /usr/lib/zabbix/alertscripts/mail.py
#!/usr/bin/env python
#-- coding: UTF-8 --
import os,sys
reload(sys)
sys.setdefaultencoding(‘utf8‘)
import getopt
import smtplib
from email.MIMEText import MIMEText
from email.MIMEMultipart import MIMEMultipart
from subprocess import *

def sendqqmail(username,password,mailfrom,mailto,subject,content):
gserver = ‘smtp.163.com‘ (这里需要改为你的邮箱,比如163就改为 smtp.163.com)
gport = 25

try:
msg = MIMEText(unicode(content).encode(‘utf-8‘))
msg[‘from‘] = mailfrom
msg[‘to‘] = mailto
msg[‘Reply-To‘] = mailfrom
msg[‘Subject‘] = subject

smtp = smtplib.SMTP(gserver, gport)
smtp.set_debuglevel(0)
smtp.ehlo()
smtp.login(username,password)

smtp.sendmail(mailfrom, mailto, msg.as_string())
smtp.close()
except Exception,err:
print "Send mail failed. Error: %s" % err

def main():br/>to=sys.argv[1]
subject=sys.argv[2]
content=sys.argv[3]
##定义QQ邮箱的账号和密码,你需要修改成你自己的账号和密码(请不要把真实的用户名和密码放到网上公开,否则你会死的很惨)
sendqqmail(‘[email protected]‘,‘aaaaaaaaaa‘,‘[email protected]‘,to,subject,content)
输入邮箱 输入授权码 输入邮箱
if name == "main":
main()
#####脚本使用说明######
#1. 首先定义好脚本中的邮箱账号和密码
#2. 脚本执行命令为:python mail.py 目标邮箱 "邮件主题" "邮件内容"
保存退出。
然后更改脚本的权限
chmod 755 mail.py
然后测试一下脚本是否会发邮件
python mail.py [email protected] "邮件标题" "邮件内容"
然后我们去邮箱验证一下即可。

然后我们创建一个用户,这个用户是用来接收邮件的
在zabbix的浏览器页面中选择管理--用户--创建用户
然后设置

然后再在用户中点击我们刚才设定的用户,在里面选择报警媒介,在里面填写邮箱

然后再选择权限,将所有组改为读写。如果不能更改,那我们既要去用户组中改权限,

然后在选择中选择所有组,再点击添加和更新,这样我们的权限就全部为读写了。
以上步骤一定要检查清楚,否则会收不到报警的。
然后我们设置动作,进入后选择创建动作,然后做如下的配置。

然后点击操作,将默认信息全部删除,然后黏贴一下的内容
HOST:{HOST.NAME} {HOST.IP}
TIME:{EVENT.DATE} {EVENT.TIME}
LEVEL:{TRIGGER.SEVERITY}
NAME:{TRIGGER.NAME}
messages:{ITEM.NAME}:{ITEM.VALUE}
ID:{EVENT.ID}
然后在里面点击‘新的’在新的里面选择发送到用户,在里面选择我们自定义的用户,然后点添加,剩下的保持默认,最后点击蓝色方框内的添加。需要注意的是,我们每一个选项都是要点击添加的,如果不点击,就不会增加选项。

然后我们设置恢复操作,也是要将默认信息全部删除,将下面的内容复制进去
HOST:{HOST.NAME} {HOST.IP}
TIME:{EVENT.DATE} {EVENT.TIME}
LEVEL:{TRIGGER.SEVERITY}
NAME:{TRIGGER.NAME}
messages:{ITEM.NAME}:{ITEM.VALUE}
ID:{EVENT.ID}
然后再操作中选择‘新的’,选择发送发消息给的用户。最后的点击更新即可。

不发送邮件的问题处理

检查发送邮件的脚本,先在命令行里测试一下是否能正常收到。
检查脚本文件的权限,确保能被zabbix用户调用
检查报警媒介中的配置
检查用户中是否有添加报警媒介,并且要具有读写权限
检查动作、操作、恢复操作中的配置

如果从头到尾都仔细检查了,实在是无法收到邮件的话,那就是你搭建的zabbix有问题了,重新恢复快照,再安装一遍。

添加自定义监控项目,配置邮件告警,测试告警,不发邮件的问题处理

原文地址:http://blog.51cto.com/13067688/2121321

时间: 2024-10-11 08:21:51

添加自定义监控项目,配置邮件告警,测试告警,不发邮件的问题处理的相关文章

在zabbix上添加自定义监控项目、配置告警且发送告警邮件到指定邮箱

在zabbix上添加自定义监控项目 配置告警且发送告警邮件到指定邮箱 原文地址:http://blog.51cto.com/13515599/2104326

19.12添加自定义监控项目19.13/19.14 配置邮件告警19.15 测试告警19.16 不发邮件的问题处理

19.12 添加自定义监控项目 19.13/19.14 配置邮件告警 19.15 测试告警 19.16 不发邮件的问题处理 19.12 添加自定义监控项目 zabbix的监控项目是在模板里面体现,但是有时候就会有些个性化的需求:某一个业务的数据,例如:运营人员想知道网站会员注册量,会员活跃度:实际上,这些数据,都可以通过数据库里面的表的数字来体现,但是zabbix模板是不可能提供那么相信的监控项目:遇到这种情况,就需要通过编程工具,写成脚本,最后通过zabbix监控项目,形成图表,就可以实现:

zabbix的添加自定义监控项目、配置邮件告警、测试告警

添加自定义监控项目 1. 需求:监控某台web服务器的80端口并发连接数,并设置图形. 2.分析需求: 在zabbix监控中心创建自定义监控项目; 针对该监控项目以图形展现; 3. 具体操作步骤: 在zabbix-agent端编辑自定义脚本 [[email protected] ~]# vim /usr/local/sbin/estab.sh 编辑脚本内容如下: #!/bin/bash ##获取80端口并发连接数 netstat -ant |grep ':80 ' |grep -c ESTABL

linux监控平台搭建(3)添加自定义监控项目、配置邮件告警、测试警报、不发邮件的问题处理

添加自定义监控项目 很多的监控项,我们都是在配置的模板中设置的,但是模板的选择是不能完全满足到我们生产中 的实际需求.所以我们可以自定义监控项目,通过编写Shell脚本或者python脚本,在脚本中获取数据库中所需业务的数,然后在通过在监控项里添加这个脚本,将脚本获取到的数目以图表的形势展现.这样就有利于运维人员及时发现和分析问题. 需求: 需求:监控某台web的80端口连接数,并出图 两步:1)zabbix监控中心创建监控项目:2)针对该监控项目以图形展现 对于第一步,需要到客户端定义脚本 1

19.12 添加自定义监控项目;19.13,19.14 配置邮件告警(上下);19.15 测试告警

19.12 添加自定义监控项目 需求:监控某台web的80端口连接数,并出图 两步:1)zabbix监控中心创建监控项目: 2)针对该监控项目以图形展现 客户端hao2机器配置: 1. 客户端(hao2)编写estab.sh脚本 : [[email protected] ~]# vim /usr/local/sbin/estab.sh 添加内容 : #!/bin/bash ##获取80端口并发连接数 netstat -ant |grep ':80 ' |grep -c ESTABLISHED 2

19.12添加自定义监控项目19.13-14配置邮件告警19.15测试告警19.16不发邮件问题处理

19.12添加自定义监控项目客户端上编辑配置文件 vim /etc/zabbix/zabbix_agentd.conf//增加UnsafeUserParameters=1 //表示使用自定义脚本UserParameter=my.estab.count[],/usr/local/sbin/estab.sh//自定义监控项的key为my.estab.count,后面的[]里面写脚本的参数,如果没有参数则可以省略,脚本为/usr/local/sbin/estab.sh搜索 /UnsafeUserPar

19.12 添加自定义监控项目 19.13/19.14 配置邮件告警 19.15 测试告警

19.12 添加自定义监控项目 zabbix-agent端:zabbix-server端: 19.13/19.14 配置邮件告警 19.15 测试告警 19.16 不发邮件的问题处理 1.检查是否能发邮件2.检查报警媒介是否配置正确3.添加用户有没有报警媒介及权限4.添加动作,操作及恢复操作配置好 原文地址:http://blog.51cto.com/12058686/2104482

六十六、添加自定义监控项目、配置邮件告警、测试告警、不发邮件的问题处理

一.添加自定义监控项目 需求:监控某台web的80端口连接数,并出图 思路:先写一个脚本,能获取到数据,因为成图需要数据,再给这个脚本执行的权限,然后再用zabbix_get命令使服务端可以获得这些数据,再到服务端创建监控项目,再创建图形,有需要报警的再设置触发器. 两步:1)zabbix监控中心创建监控项目:2)针对该监控项目以图形展现 对于第一步,需要到客户端定义脚本,脚本名字位置都可以自定义 # vim /usr/local/sbin/estab.sh //内容如下 #!/bin/bash

19.12 添加自定义监控项目 19.13/19.14 配置邮件告警 19.15 测试告警 19.1

19.12 添加自定义监控项目 19.13/19.14 配置邮件告警 19.15 测试告警 19.16 不发邮件的问题处理 原文地址:http://blog.51cto.com/13227377/2157068