【魄爺】 发表于 2019-1-25 12:05:56

zabbix web scenario 监控Web站点的可用性

  Zabbix也可以监控Web站点的可用性。前提是安装Zabbix时启用了libcurl支持.
  要使用Web监控,首先需要定义Web Scenario。而每个Web Scenario有一个或者多个
  "Http 请求"或者 "Steps"构成。Zabbix根据定义的顺序定期的执行步骤。
  在一个Web Scenario中,搜集到的信息包含一下几种:
  1. 整个web场景所有步骤的平均下载速度(每秒)
  2. 执行出错的步骤(steps)编号
  3. 最近的错误信息
  而在每一个步骤中又搜集一下信息:
  1. 平均下载速度(每秒)
  2. 响应时间
  3. 响应返回码
  下面以一个具体实例来看看如何配置一个 Web MonitorScenario.本文以现有的考勤系统
  站点为例.
  一、创建一个application
  Web Scenario必须链接到application,因此创建Web Scenario之前,需要创建一个application.
  进入 Zabbix Web 管理控制台->【Configuration】->Hosts,选择某台主机,这里选择"Zabbix Server"这台
  主机,点击"Applicaitons",进入应用程序创建界面,如图示:

  点击右上角"Create application",弹出创建页面,在Name 输入框中为应用程序设置个名称,这里设置为
  "Web Monitor".


  点击"Save"后,可以看到应用程序列表中出现了新建的应用程序,如图示:

  建好应用程序,就可以建立Web scenario了.
  二、建立Web scenario
  【Configuration】->【Web】,点击右上角"Create scenario" ,并确保 Host列表中的主机和刚才创建应用程
  序时的主机保持一致,这里也就是 “Zabbix Server”主机.##注意:如果zabbix2.2以上版本,这个选项在每个主机里面的最后面。

  弹出创建界面,在Scenario选项卡下的Application中,点击右边的"Selcet",选中刚才建立的"Web
  Monitor"应用程序,如图示

  然后分别设置好其他信息:
  Name : 设置Web scenario名称
  Authentication: 设置认证方式, 包含三种,分别是 "None","Basic Authenticatioon","NTLM Authenticatioon".
  Updata interval: 设置场景被执行的时间间隔
  Agent: 设置client agent,Web scenario将会伪装成此处设置的agent浏览器类型.
  Variables: 在Steps中用到的变量列表,这里定义宏,后面设置Steps时方便调用.这里我定义了两个宏,分
  别为用户名和密码,待会模拟登录时会调用。
  设置完毕后如下图:

  切换到"Steps"选项卡,开始定义“Step”:
  点击"Add",弹出增加step界面:
  Step 设置界面:
  Name: 设置Step名称
  URL: 要被监控网站的URL
  Post: Http post 变量
  TimeOut:处理URL的最大时间值,Zabbix不会使用超过2倍该值的时间去处理URL
  Required string: 这里可以设置请求的表达式,也可以是正则表达式
  Required status codes: Http请求返回状态值.取值为200,201,210-299.

  我们先设置第一步,监控访问首页的速度等性能.如下图:

  第二步我们模拟登陆,监控模拟登陆的响应时间:
  在设置模拟登陆之前,我们首先要查看一下待监控网站的源代码,以便获取Post账号密码信息的id:

  根据获取的ID,设置如下:

  第三步,设置登陆检查,获取只有在登录后的页面中才有的字符串,以便测试是否登录成功:

  第四步,模拟登出,否则OA系统数据库每隔前面设置的间隔就会有链接回话,数据库会增加大量的会话.

  三、检查Web scenario监控数据:
  Zabbix Web管理控制台,【Monitoring】->【Web】,打开如下界面

  点击“Kaoqin Monitor”,打开监控数据页面,如下所示:
  该图显示没步骤的响应速度、时间、响应代码和状态的详细情况:

  速度图:

  响应时间图:

  从图中,可以清晰的分析当前的网络与Web站点的连接访问性能情况。
  另外,还可以对 Web scenario 设置trigger,当出现异常时及时发出警告。
  本文暂不介绍如何对Web scenario建立trigger,改天单独写文章介绍。
  Zabbix的Web Scenario Monitor 功能在电商行业的应用还是很广泛的,因为电商行业很关注终端用户对电
  商网站的访问体验的。用此功能作为技术手段评估站点对于改善用户体验还是很有益处的。

页: [1]
查看完整版本: zabbix web scenario 监控Web站点的可用性