通过zabbix做web监控不仅仅可以监控到站点的响应时间,还可以根据站点返回的状态码,或者相应时间做报警。zabbix对不需要进行认证的URL或者需要进行认证的URL都可以进行监控。
1)添加web url监控(无需验证)
选择一个主机或者添加一个模板,创建Web scenarios。
Scenario
你可以为这些URL监控添加一个application,我这里没有添加。然后需要选择一个探测URL的模拟浏览器。
Steps
添加对URL的监控时,有以下三个参数需要定义:
Timeout:连接超时时间,默认15s。
Required string:指定一个URL返回的字符串,有此字符串为真,不然为假,可选。
Required status codes:指定一个URL返回的状态码,为此状态码则为真,不然为假,可选。
2)添加监控
添加完web监控后再次打开configuration—hosts/templates,选择Triggers,创建如下触发器。
第一个监控是针对这个URL返回状态码,如果返回状态码不等于200就报警,但是这里我加了一个条件就是需要检测三次,以免误判。
第二个监控是针对这个URL返回时间(resp),如果返回时间大于3s就报警,但是这里我加了一个依赖,如果第一个监控有问题它就不进行报警了。
3)监控图
如果你像我这样是对模板进行编辑的,那么需要应用到某个主机上。过会打开monitoring–>web就可以看到如下数据了。
可以看到,对此URL的速率、响应时间、返回状态码、以及状态都有数据,还有对应的历史趋势图。
上面只是一个非常简单的URL监控,如果是要对一个需要登录的URL进行监控,zabbix也是可以支持的。另外,对URL的监控我们这里只会添加了step 1,zabbix还支持对同一个任务添加多个step,每个step之间是有关联的,并且报警也是可以关联的。