自学Zabbix4.2 web监控项创建+item详解
1. web监控项创建
1.1 Scenario 选项卡
Name: | 监控项的名称 |
Application: | 放到哪个应用中 |
Authentication: | 是否有http的基本认证,大部分情况下是None,难不成用户进来还需要经过一次认证? |
Update interval: | 更新周期,默认60秒,多久跑一次 |
Retries: | 重试次数 |
Agetn: | 模拟浏览器 |
HTTP proxy: | 代理,如果你的站点有多台服务器,那么请写上你目标服务器ip和端口,例如http://10.9.0.2:80,默认端口可不是80,别忘记80了 |
Variables: | 宏变量 |
1.2 Steps 选项卡
name: | 当前step名称,item key中可以用到 |
url: | 需要检测的网址 |
POST: | 你需要post提交上去的内容,例如user=123&password=123456,,或者使用宏变量user={user}&password={password},如果支持GET,那么可以直接写到URL里面 variables:变量,这边定义宏变量后续的step可以使用 |
Timeout: | 超时时间,默认15秒 |
Required string: | 响应的内容中必须包含的字符串,否则失败 |
Required status codes: | 响应代码必须包含在里面,多个响应代码用逗号分隔,例如200,301,302 |
1.3 Authentication 选项卡
2. item详解
一旦我们创建好web监控之后,我们便可以查看web站点的性能状况。zabbix一共给我们提供了6个item key,实际上就三个,分别针对单个阶段和整个阶段,三个item分别为web.test.in、web.test.fail、web.test.error
2.1 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方案的名称即可
2.2 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)名称
2.3 web监控项数据保留时间
web监控历史数据数据保存30天,趋势数据保存90天,老数据将被清除