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

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

19.16 不发邮件的问题处理


添加自定义监控项目

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

1.先到客户端定义脚本监控并修改权限为755

           vim /usr/local/sbin/estab.sh

                    #!/bin/bash
##获取80端口并发连接数

netstat -ant |grep ':80 ' |grep -c ESTABLISHED


    chmod 755 estab.sh


2.客户端编辑配置文件

vim /etc/zabbix/zabbix_agentd.conf

搜索UnsafeUserParameters,然后再下一行添加UnsafeUserParameters=1   //这个是自定义脚本功能

再添加:UserParameter=my.estab.count[*],/usr/local/sbin/estab.sh    //定义名字、参数,脚本路径

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


3.重启zabbix-agent服务

 4.到服务端进行测试脚本是否能执行

            zabbix_get -s 192.168.142.131 -p10050 -k'my.estab.count'   //能显示说明正常  --P指定端口 --K指定名字

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

5.然后到web监控中心进行添加自定义监控项目

配置---主机--监控项---创建监控项

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

6.然后创建图形

配置---主机----图形----创建图形-

填写名字---添加监控项

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

7.查看是否生成

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




配置邮件告警

1.登录QQ邮箱点击设置-账户-下拉--开启POP3/SMTP服务/IMAP/SMTP服务

---下面脚本参数分别是 发送对象、发送主题、发送内容

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

开启后会获取授权码,请进行保存。待会脚本用到

2.创建报警类型

 “管理”-----“报警媒介类型”-----“创建媒体类型”

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

3.通过zabbix_server配置文件确定告警右键的脚本应该放哪里

vim /etc/zabbix/zabbix_server.conf 

        搜索AlertScriptsPath - -下图看到路径

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

4.创建报警脚本:(服务端写)

脚本内容网址:https://coding.net/u/aminglinux/p/aminglinux-book/git/blob/master/D22Z/mail.py 

脚本:

                sendqqmail那列定义你的邮箱账号和授权码

chmod 755 mail.py  ---修改权限


5.测试是否能接收

python mail.py  [email protected] "qqqq" "1231231"     --下图测试已经收到

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

6.在web监控中心创建一个用户

管理----用户---创建用户---填写名字 群组、密码---还有报警媒介添加邮箱

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

然后设置用户权限:

点管理---用户群组----点击你所在的组---改读写---添加所有组   --如下图修改成功

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


配置动作:触发器触发后做的动作

配置---动作--创建动作

条件A为:在维护状态,非在维护下不发生邮件,

条件B为:设置触发器大于未分类发送邮件

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

下图添加默认信息、填写群组、用户

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

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


设置回复操作

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

ID:{EVENT.ID}

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


测试告警

我们自定义一个触发器让他报警:

点击配置---主机---触发器----创建触发器--这里添加Processor load (1 min average per core)

意思是当负载小于1的时候报警

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

查看仪表盘:出现了问题

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

经检查是web服务问题,重新添加系统负载触发器即可发送

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

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

不发邮件的问题处理

当有时显示完成却不能收到邮件时,我们应该检查:

用户是否设置报警媒介

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

用户权限是否为读写

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

服务端的脚本是否为755权限,服务端运行脚本是否能发送邮件

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

动作添加了接收邮件的用户

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