毕业设计之zabbix=[web检测
网站对一个公司来说非常重要,里边包含了公司的业务,介绍和订单等相关信息,网站的宕掉了对公司的影响非常重大,所以要很好的对网站的页面进行监控

创建web场景


各部分介绍:
Name:唯一的scenario名称。
Application:选择一个scenario归属的监控项组。
New application:输入一个scenario归属的新监控项组的名称。
Update interval (in sec):执行的时间间隔。
Attempts:用于执行web scenario步骤尝试的次数。有时候会因为网络出现问题(超时、连接丢失等)的情况下可以重复执行步骤几次,该设置会影响scenario中的每一个步骤。最多可以指定10次,默认值为1。需要注意的是Zabbix不会因为一个错误响应代码或一个必须的字符串不匹配而重复执行步骤。
Agent:选择一个浏览器客户端,当一个网站针对不同的浏览器返回不同的内容时非常有用。在这里也可以使用用户定义的宏变量。
HTTP proxy:指定一个HTTP 代理。使用的格式为:http://[username[:password]@]proxy.mycompany.com[:port],默认使用端口1080。如果指定http_proxy、HTTPS_PROXY等代理环境变量,将会覆盖proxy相关的环境变量。需要注意的是HTTP代理只支持简单的认证。在这里也可以使用用户定义的宏变量。
Variables:scenario级别的变量列表。
Headers:当执行请求时HTTP headers将被发送。Headers使用HTTP协议的语法列出,这将设置cURL选项CURLOPT_HTTPHEADER。例如:Accept-Charset:utf-8,Accept-Language: en-US,Content-Type: application/xml; charset=utf-8。在这里可以使用Host.*和用户定义的宏变量。
Enabled:勾选此项为启用该Web scenario。



各项解释:
Name:唯一的step名称。
URL:需要监控的URL,支持HTTP或HTTPS协议。GET参数可以直接写在URL中,也可以使用宏变量,长度不能超过2048个字符。
Post:HTTP请求中的 POST变量。例如id=2345&userid={user},如果 {user} 是在web scenario中定义的宏变量,在step执行时会自动替换相应的值。这个变量会原样发送,不会进行URL编码。
Variables:step级别的变量列表。
Headers:当执行请求时HTTP headers将被发送。Headers使用HTTP协议的语法列出。Step级别上定义的Headers会覆盖scenario级别的Headers。在这里可以使用HOST.*和用户定义的宏变量。这将设置cURL选项CURLOPT_HTTPHEADER。
Follow redirects:勾选此项允许HTTP redirects(重定向)。这将设置cURL选项CURLOPT_FOLLOWLOCATION。
Retrieve only headers:勾选此项仅接收HTTP响应的headers。这将设置cURL选项CURLOPT_NOBODY。
Timeout:超过设置的秒数后Zabbix不会再处理URL。实际上这个参数定义了最大的连接时间和完成HTTP请求的最大时间。因此Zabbix在step中处理URL不会超出2倍的设置时间。
Required string:需要的正则表达式。除非接收的HTML中的内容匹配正则表达式,否则step将执行失败。如果该字段为空时不执行检测。这里需要注意不能引用在Zabbix 前端页面中创建的正则表达式。在这里也可以使用宏变量。
Required status codes:设置期望的HTTP状态码列表,例如200,201,202-229。如果Zabbix收集的状态码在这个列表中没有时step将执行失败。如果该字段为空时不执行检测。在这里也可以使用宏变量。

各项解释:
HTTP authentication:身份验证选项。包括:
None:不使用身份验证。
Basic:使用基本身份验证。
NTLM:使用NTLM(Windows NT LAN Manager)身份验证。
选择Basic或NTLM时页面会出现用户名和密码的输入字段,在用户名和密码字段中可以使用宏变量。 SSL verify peer:勾选此项为验证web服务器的SSL证书。服务器证书会自动从系统CA的存储位置获得。你可以使用Zabbixserver或 proxy server的配置文件中设置参数SSLCALocation保存证书。这将设置cURL选项CURLOPT_SSL_VERIFYPEER。
SSL verify host:勾选此项为验证web服务器证书匹配的Common Name 字段或Subject Alternate Name 字段。这将设置cURL选项CURLOPT_SSL_VERIFYHOST。
SSL certificate file:用于客户端身份验证的 SSL 证书文件的名称。证书文件必须是 PEM1 格式。如果证书文件还包含私钥,则将 SSL Key文件字段留空。如果对密钥进行加密,在 SSL Key密码字段中指定密码。Zabbixserver或 proxy server的配置文件中
设置参数SSLCALocation保存证书文件。在这里可以使用HOST.*和用户定义的宏变量。这将设置cURL选项CURLOPT_SSLCERT。
SSL key file:用于客户端身份验证 SSL 私钥文件的名称。私钥文件必须是PEM1格式。Zabbix server或 proxy server的配置文件中设置参数SSLCALocation保存证书文件。在这里可以使用HOST.*和用户定义的宏变量。这将设置cURL选项CURLOPT_SSLKEY。
SSL key password:SSL 私钥文件密码。在这里可以使用用户定义的宏变量。这将设置cURL选项CURLOPT_KEYPASSWD。
监控项的解释:

Web监控项
Web 监控项主要有两种:Scenario items 和Scenario step items。这些监控项默认历史保存时间为30天,趋势保存时间为90天。 Scenario items
Web Scenario创建完成后Zabbix会自动添加下面的监控项,并连接它们到已经选中的应用。 Download speed for scenario<Scenario>:该监控项收集整个Scenario有关的平均下载速度数据,单位为bytes per second。监控项的key是:web.test.in[Scenario,,bps],类型是:Numeric(float)。
Failed step of scenario<Scenario>:该监控项将显示整个Scenario中失败的step的数量,如果所有step都执行成功返回0。监控项的key是:web.test.fail[Scenario],类型是: Numeric(unsigned)。
Last error message of scenario<Scenario>:该监控项返回Scenario的最后的错误信息文本,如果Scenario中有失败的step时会保存一个新的值,如果所有step都成功执行时没有新的值被保存。
监控项的key是:web.test.error[Scenario],类型是: Character。
Scenario items也可以用来创建触发器和定义通知条件。 例如: 创建一个Web ScenarioFailed的触发器时, 触发器表达式可以定义为: {host:web.test.fail[Scenario].last()}<>0
创建一个Web ScenarioFailed的触发器时,在触发器名称中使用问题的描述信息。触发器名称可以定义为:
Web scenario “Scenario” failed: {ITEM.VALUE} 触发器表达式可以定义为: {host:web.test.error[Scenario].strlen()}>0 and{host:web.test.fail[Scenario].min()}>0 创建一个Webapplication is slow的触发器时,触发器表达式可以定义为:
{host:web.test.in[Scenario,,bps].last()}<10000 在实际环境中,请把Scenario 替换成你定义的场景的实际名称。 Scenario step items
在Scenario中每个step创建完成后Zabbix会自动添加下面的监控项,并连接它们到选中的应用。 Download speed for step<Step> of scenario <Scenario>:该监控项收集step有关的平均下载速度数据,单位为 bytesper second。监控项的key是: web.test.in[Scenario,Step,bps],类型是: Numeric(float)。
Response time for step<Step> of scenario <Scenario>:该监控项收集step有关的响应时间的数据,单位为秒。响应时间是从请求开始计时,直到所有信息传输完毕。监控项的key是:web.test.time[Scenario,Step,resp],类型是:Numeric(float)。
Response code for step <Step>of scenario <Scenario>:该监控项显示step的返回代码,如50x、40x等在实际环境中应该重点监控。监控项的key是:web.test.rspcode[Scenario,Step],类型是:Numeric(unsigned)。
在创建触发器时也可以使用这些Scenario step item。例如,创建一个ZabbixGUI login is too slow的触发器时,触发器表达式可以定义为: {zabbix:web.test.time[ZABBIX GUI,Login,resp].last()}>3
毕业设计之zabbix=[web检测的更多相关文章
- centos7之zabbix的web检测
一.web监控 Web scenarios(Web 场景)是用来监控Web程序的,可以监控到Web程序的下载速度.返回码及响应时间,还支持把一组连续的Web动作作为一个整体进行监控. 1.web监控的 ...
- zabbix自定义web检测
zabbix自定义web检测 本博客使用zabbix 版本 4.0.3 Web监控的原理 Web监控即对HTTP服务的监控,模拟用户去访问网站,对特定的结果进行比较,如状态码.返回字符串等特定的数据进 ...
- 19 Zabbix web监控实例
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 9 Zabbix web监控实例 通过前面的介绍你已经了解Web scenario的配置,下面我们 ...
- 【3】循序渐进学 Zabbix:配置 Zabbix Web
上一篇 [2]循序渐进学 Zabbix:安装配置 Zabbix Server 服务端 配置 Zabbix Web 访问 上一篇完成了 Zabbix Server 的安装,但是那对于我们而言只是一个服务 ...
- zabbix web监测
web monitoring(监测)属于业务监控,用来监控Web站点多方面的可用性,可以监控Web站点的下载速度.返回码和响应时间.Zabbix能够检测HTML中包含的预先定义的字符串,也可以模拟登录 ...
- zabbix web 登录成功后提示(红色提示):zabbix server is not running:the information displayed may not be current
原因是$ZBX_SERVER,我配了外网地址,这里应该配成内网的: # cat /etc/zabbix/web/zabbix.conf.php <?php // Zabbix GUI confi ...
- zabbix web url监控
一, web监控 这个监控为通过cookie的值来监控网站是否能正常使用 这里测试环境为bbs网站 二, 配置web监控 01, 创建web监控项 02,配置步骤1 查看数据是否成功 第一查看首页时候 ...
- zabbix web端有数据但是没有图形
zabbix web端有数据但是没有图形 我遇到的情况是,在配置 zabbix 网站目录时,修改了zabbix 目录的所有者和所属组,以使得 zabbix/conf/zabbix.conf.php 文 ...
- CentOS7 redhat7 linux系统1分钟安装Zabbix web 监控 服务器
一.准备工作OS:centos7.4Zabbix version:3.4.6(2018/1/15日上线的新版本)Database:MariaDB关闭防火墙:systemctl stop firewal ...
随机推荐
- Spring Cloud Alibaba 使用Nacos作为服务注册中心
为什么需要注册中心? 在分布式架构中,服务会注册到这里,当服务需要调用其它服务时,就到这里找到服务的地址,进行调用:服务管理,核心是有个服务注册表,心跳机制动态维护 : 服务注册 创建普通Spring ...
- Python触发异常
我们可以使用raise语句自己触发异常,raise语法格式如下: raise [Exception [, args [, traceback]]] 语句中 Exception 是异常的类型(例如,Na ...
- 攻防世界 杂项 7.Aesop_secret
打开发现是个gif,以为有个二维码扫一下就给flag,结果被欺骗.呜呜呜 好了,还是使用编辑器看一下吧 发现了好玩的,U2FsdGVkX19QwGkcgD0fTjZxgijRzQOGbCWALh4sR ...
- Java代理:静态代理、JDK动态代理和CGLIB动态代理
代理模式(英语:Proxy Pattern)是程序设计中的一种设计模式.所谓的代理者是指一个类别可以作为其它东西的接口.代理者可以作任何东西的接口:网络连接.存储器中的大对象.文件或其它昂贵或无法复制 ...
- populating-next-right-pointers-in-each-node leetcode C++
Given a binary tree struct TreeLinkNode { TreeLinkNode *left; TreeLinkNode *right; TreeLinkNode *nex ...
- Serverless 工程实践|自建 Apache OpenWhisk 平台
作者 | 刘宇(江昱) 前言:OpenWhisk 是一个开源.无服务器的云平台,可以在运行时容器中通过执行扩展的代码响应各种事件,而无须用户关心相关的基础设施架构. OpenWhisk 简介 Open ...
- x64 InlineHook 黑魔法
目录 x64 InlineHook 黑魔法 为什么不能用X86 的HOOK方式? 原理:jmp + rip 进行寻址6字节方式跳转 手动InlineHook 临时地址x(找一块空内存) 计算偏移 源地 ...
- 使用.NET6打造动态API
ApiLite是直接将Service层自动生成api路由,可以不用添加Controller,支持模块插件化,在项目开发中能够提高工作效率,降低代码量. 开发环境 .NET SDK 6.0.100-rc ...
- 批量免密ssh
参考连接:https://www.cnblogs.com/xiaoyuxixi/p/11413355.html 适用于所有密码都一样的情况下 应用场景: 在应用ansible的实际情况中,有一个很现实 ...
- oracle 定时任务增、删、改、查
增: 创建一个计划任务 begin sys.dbms_job.submit(job=>:job, what=>'要定时执行的存储过程名:',--例如:包名.存储过程名; 记得写分号 ne ...