作者:SRE运维博客
博客地址: https://www.cnsre.cn/
文章地址:https://www.cnsre.cn/posts/211101950005/
相关话题:https://www.cnsre.cn/tags/zabbix/
前言介绍
需要对页面 url 对页面的延迟,访问时间进行监控。如果页面不是正常的状态就发送告警。基于这个需求,使用zabbix 对url 的进行监控,使用的是zabbix 的web监控功能。
选择主机添加应用集
选在相应主机,并添加Web监控
按照方式新建Web场景
注意:
名称统一规则:相应的域名
应用集:选择之前创建的 或者 新建一个,名称为URL 告警
更新间隔:默认为1m
尝试次数:默认1次
客户端:选择IE 11.0
添加
添加步骤
名称使用和场景名称一样即可:域名地址
URL:复制nagios的URL地址,将域名替换为zabbix上的宏:端口{HOST.IP}:80
如:http://http://download.tujia.com/monitor.html
写为:http://http://{HOST.IP}/monitor.html
PS:如果地址为 https
访问,此处直接写http即可
头部:
名称:host
值:填写为监控页面的域名,如此例中的 download.tujia.com
要求的字符串:填写之前访问测试页面包含的字符串,如ok
、IsSuccess:true
等,此例为{"status":"failure","message":"-1 参数不全"}
URL地址
添加完成,并且检测成功后,可观察如下
主机中没有报错信息
添加告警,触发报警
1)切回原主机界面,添加触发器
2)创建触发器:
触发器名称:规则为域名
+无法响应
,如此例中的download.tujia.com
+无法响应
严重性:选择一般严重
表达式: 建立过程如下
如下图中,当建立完web检测后,主机中会生成响应的监控项,其中一项web.test.fail[web_check_download.tujia.com]
,
若web检测失败,此监控项的值为1,若正常,则为0
用于检测此web检测是否成功,此例中的trigger含义为,当此web检测连续3min检测失败(选择周期T的最小值>N,T为3m),则触发,表达式的构建如下:
{主机名称:监控项名称.条件}+比较符号+数值,如下为此例中的表达式
{HZ 3A 150:web.test.fail[URLapi.php告警].min(3m)}<0
{ 主机名 :监控项(此web检测失败) .条件(三分钟内)}>0
表达式:如果最近连续4次取到的response_code 值不是200(网站响应代码),则触发报警
{192.168.3.86:web.test.rspcode[3.86_http_status,3.86_http_status].last(0)}<>200 and {192.168.3.86:web.test.rspcode[3.86_http_status,3.86_http_status].last(1)}<>200 and {192.168.3.86:web.test.rspcode[3.86_http_status,3.86_http_status].last(2)}<>200 and {192.168.3.86:web.test.rspcode[3.86_http_status,3.86_http_status].last(3)}<>200
作者:SRE运维博客
博客地址: https://www.cnsre.cn/
文章地址:https://www.cnsre.cn/posts/211101950005/
相关话题:https://www.cnsre.cn/tags/zabbix/