zabbix系列(八)zabbix添加对web页面url的状态监控

  • Post author:
  • Post category:其他


通过zabbi做web监控不仅仅可以监控到站点的响应时间,还可以根据站点返回的状态码,或者响应时间做报警

1、对需要监控的主机添加web监控

在configuration—hosts 中打开主机列表,选择需要添加监控主机的web,创建application



选择web项,再单击右上角的Create web scenario




在Name中输入监控的名称,Agent是选择测试站点的浏览器类型

在Steps选项卡添加测试步骤

Name是测试步骤的名称,URL监控站点的真实url,Required status colder是监控时要求页面返回的状态码,通常设置200

添加完成后可以在monitor—web 看到刚才添加的监控




2、报警设置

添加完web监控后再次打开configuration—hosts主机列表,选择Triggers

点击 右上角的create triggers



在Name中输入Triggers的名称

点击 Add

点击Item 上的select

在添加完web 监控后回自动创建相应的Keys,在添加完web 监控后回自动创建相应的Keys,但是要选择已经定义web的相应主机

在Function中 选择相应的表达式,这里是设置返回的状态码不等于变量 N 时触发报警,N的值在下面设置成200

表达式:如果最近连续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

测试,将目标机器3.86上的index.html改名为index,即可看到触发的报警,当报警后,我们可以对目标机器进行操作,报警、触发重新启动脚本等,详见:


zabbix系列(九)zabbix3.0实现自动触发zabbix-agent端shell脚本任务

http://blog.csdn.net/reblue520/article/details/52315154


备注:

一旦我们创建好web监控之后,我们便可以查看web站点的性能状况。zabbix一共给我们提供了6个item key,实际上就三个,分别针对单个阶段和整个阶段,三个item分别为web.test.in、web.test.fail、web.test.error,下面看看它的具体用法。

web方案监控项当web监控项创建好之后,下面的key会被自动添加好

key描述

web.test.in[Scenario,,bps]整个阶段中的下载速度,单位字节/秒

类型: Numeric(float)

web.test.fail[Scenario]整个检测阶段,失败的阶段个数,如果所有的阶段(step)都成功,那么返回0

类型: Numeric(unsigned)

web.test.error[Scenario]返回最后一个错误信息(文本)

web监控项实例创建触发器“Web scenario failed”,表达式如下

{host:web.test.fail[Scenario].last(0)}#0

创建触发器“Web application is slow”,表达式如下

{host:web.test.in[Scenario,,bps].last(0)}<10000

备注:Scenario改成你web方案的名称即可

web方案阶段监控项

key描述

web.test.in[Scenario,Step,bps]检索指定阶段的下载速度,字节每秒

类型: Numeric(float)

web.test.time[Scenario,Step]获取指定阶段响应时间,时间计算从开始请求道获取到所有响应信息之后

类型: Numeric(float)

web.test.rspcode[Scenario,Step]检索指定阶段的http响应代码

类型: Numeric(unsigned)

step item使用实例创建触发器 “Zabbix GUI login is too slow” trigger, 触发器表达式如下

{zabbix:web.test.time[ZABBIX GUI,Login].last(0)}>3

说明:ZABBIX GUI是web方案的名称,Login为阶段(step)名称

web监控项数据保留时间web监控历史数据数据保存30天,趋势数据保存90天,老数据将被清除



版权声明:本文为reblue520原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。