19.12 添加自定义监控项目

19.12 添加自定义监控项目

该配置的用途是监控模板中没有的监控项目。

需求:监控某台web的80端口连接数,并出图。

步骤:
1) zabbix监控中心创建监控项目
2) 针对该监控项目以图形展现

配置80端口的监控脚本

 统计80端口连接数量

可以去查看ESTABLISHED的访问量(established)

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    //编辑客户端zabbix文件增加

UnsafeUserParameters=1    #表示使用自定义脚本
UserParameter=my.estab.count[*],/usr/local/sbin/estab.sh
#自定义监控项的key(监控web端“键值”)为my.estab.count,后面的[*]里面写的是脚本参数
#如果没有参数则可以省略,脚本为/usr/local/sbin/estab.sh

重启服务  systemctl restart zabbix-agent.service

使用zabbix自带命令测试该脚本是否生效(服务端执行):

zabbix_get -s 192.168.5.164 -p 10050 -k 'my.estab.count'

扫描二维码关注公众号,回复: 1038496 查看本文章

web端添加自定义监控:

添加图形:

创建触发器:

即,当并发连接数最新值T大于N(自定义该值,在此N=200)时触发该警报。

 19.13 配置邮件告警

开启邮箱的POP3、IMAP、SMTP服务

登录QQ.或者163邮箱,开启POP3、IMAP、SMTP服务

配置报警脚本

邮箱相关服务配置完成后到监控中心进行报警配置。

配置报警媒介类型

“管理”——“报警媒介类型”——“创建媒介类型”:

设定媒介类型名称、类型、脚本名称(与服务器中脚本名称保持一致)、添加脚本参数(该参数为zabbix内置参数,之后会配置在mail.py脚本中, {ALERT.SENDTO} ,{ALERT.SUBJECT},{ALERT.MESSAGE}),上述内容配置完后再点“添加”(最下面蓝色)。

添加报警脚本mail.py

服务端配置:

vim /etc/zabbix/zabbix_server.conf

AlertScriptsPath=/usr/lib/zabbix/alertscripts     //脚本必须放在此目录

vim /usr/lib/zabbix/alertscripts/mail.py      //配置脚本

#!/usr/bin/python
#coding:utf-8
import smtplib
from email.mime.text import MIMEText
import sys
mail_host = 'smtp.163.com'
mail_user = '[email protected]'
mail_pass = '1111111'
mail_postfix = '163.com'
def send_mail(to_list,subject,content):
    me = "zabbix 监控告警平台"+"<"+mail_user+"@"+mail_postfix+">"
    msg = MIMEText(content, 'plain', 'utf-8')
    msg['Subject'] = subject
    msg['From'] = me
    msg['to'] = to_list
    try:
        s = smtplib.SMTP()
        s.connect(mail_host)
        s.login(mail_user,mail_pass)
        s.sendmail(me,to_list,msg.as_string())
        s.close()
        return True
    except Exception,e:
        print str(e)
        return False
if __name__ == "__main__":
    send_mail(sys.argv[1], sys.argv[2], sys.argv[3])

chmod 755 /usr/lib/zabbix/alertscripts/mail.py       //修改权限

测试能否正常发送邮件:

python mail.py ******@163.com "test" "1212121"

配置用户

在监控中心(web端)创建一个接收告警邮件的“用户”,在创建用户前需要先创建一个“用户组”,在此使用一个已经存在的用户组。“管理”——“用户”——“创建用户”:

配置报警媒介

打开用户adai——报警媒介——添加报警媒介——更新:

配置用户权限:
需要到用户所在的“用户群组”更改用户的权限:

选择后权限后点击“添加”——“更新”,如果此处设置错误,之后将无法收到报警邮件。

配置动作

设置触发器被触发后所要执行的的操作!

设置动作,“配置”,“动作”,“创建动作”,名称写(自定义),“操作”页面,内容如下

A维护状态 非在 维护,B触发器示警度>=未分类

HOST:{HOST.NAME} {HOST.IP}
TIME:{EVENT.DATE}  {EVENT.TIME} 
LEVEL:{TRIGGER.SEVERITY} 
NAME:{TRIGGER.NAME}
messages:{ITEM.NAME}:{ITEM.VALUE}
ID:{EVENT.ID}
ID:{EVENT.ID}

恢复操作:

最后状态为已启用

19.15 测试告警

将监控项目改成故障项目。

“配置”——“主机”——“触发器”——“创建触发器”
注: 该触发器只用于测试,完成测试后要删除!

其他参数保持默认,点蓝色按钮“添加”。配置完成后进入“仪表盘”等一分钟左右

经多次尝试都显示动作完成,但是查看邮箱并没有收到任何邮件

19.16 不发邮件的问题处理

 chmod 777 /usr/lib/zabbix/alertscripts/mail.py     //将权限改到最大

重启服务

3.2 版本存在 

猜你喜欢

转载自my.oschina.net/u/3803395/blog/1819040