zabbix对web性能的监控,通过它可以了解web站点的可用性以及性能。最终将各项指标绘制到图形中,这样我们可以了解到一个站点的下载速度、响应速度等。
To perform web monitoring Zabbix server must be initially configured with cURL (libcurl) support.
需要注意的是在安装zabbix server需要增加libcurl的支持。
我们只需要配置后web监控项,那么zabbix server会定时按照你的规则去执行性能监控。如果配置都差不多,可以创建模板,然后套用模板即可。
zabbix可以检测http、https协议,而且zabbix也支持重定向,执行过程中的所有cookies也会被保留。如果需要的话,zabbix会检索某个页面是否包含特定的字符,如果有表示成功,没有表示失败,例如检测zabbix登陆是否正常,它会检索响应的html页面中是否包含Admin,如果有表示登陆成功。
每次执行完之后的数据都会保存到zabbix数据中,这些数据可以用户绘制成图表以及用户zabbix触发器和发送报警通知
(一)采集的监控项
The following information is collected in any web scenario: 整个监控过程收集的监控项
average download speed per second for all steps of whole scenario 整个web监控规则中的页面平均下载速度,单位:秒
number of the step that failed 失败的步骤数量
last error message 最后的错误信息
The following information is collected in any web scenario step: 每一步收集的监控项
download speed per second 当前步骤平均下载速度
response time 响应时间
response code 响应代码,如200
(二)采集监控项创建示例:
Configuration->hosts->点击主机name-> ->
Name:监控项的名称
Application:应用名称
Update interval:更新周期,默认60秒
Retries:重试次数
Agetn:模拟浏览器
HTTP proxy:代理,如果你的站点有多台服务器,那么请写上你目标服务器ip和端口,例如http://10.9.0.2:80,默认端口80可以不写,否则需要加上端口
Variables:宏变量,Steps中可以使用;例如:{username}=admin {password}=123456
Headers: http 请求headers
添加步骤点击Add
step参数说明:
name:当前步骤名称,item key中可以用到,如
url:需要检测的网址
POST:需要post提交上去的内容,例如user=123&password=123456,,或者使用宏变量user={username}&password={password},如果支持GET,那么可以直接写到URL里面
variables:变量,当前step中定义宏变量在后面的step可以使用,例如post中值为:
user={username}&password={password}&remeberMe=true
Headers:
Follow redirects: 是否遵循HTTP重定向
Retrieve only headers: 是否只在HTTP 响应headers部分检索Required string 中定义的信息
Timeout:超时时间,默认15秒
Required string:响应的内容中必须包含的字符串,否则失败
Required status codes:响应代码必须包含在里面,多个响应代码用逗号分隔,例如200,301,302
HTTP authentication:是否有http的基本认证,一般情况下是None; Basic -鉴权 ; NTLM -Windows NT 早期版本的标准安全协议;
(三)查看结果 Monitoring->Web->选择web,看到如下图就配置成功了