Zabbix分布式监控Web监控

目录

  • [1 概述](#1 概述)
  • [2 配置 Web 场景](#2 配置 Web 场景)
    • [2.1 配置步骤](#2.1 配置步骤)
    • [2.2 显示](#2.2 显示)
  • [3 Web 场景步骤](#3 Web 场景步骤)
      • [3.1 创建新的 Web 场景。](#3.1 创建新的 Web 场景。)
      • [3.2 定义场景的步骤](#3.2 定义场景的步骤)
      • [3.3 保存配置完成的Web 监控场景。](#3.3 保存配置完成的Web 监控场景。)
  • [4 Zabbix-Get的使用](#4 Zabbix-Get的使用)

1 概述

您可以使用 Zabbix 对多个网站进行可用性方面监控:

要使用 Web 监控,您需要定义 web 场景。Web 场景包括一个或多个 HTTP 请求或"步骤"。Zabbix 服务器根据预定义的命令周期性的执行这些步骤,如果主机是通过Proxy代理监控的话,这些步骤将由proxy代理执行。

从 Zabbix2.2 开始,Web 场景和 Items,Triggers 等一样,是依附在 Hosts/Templates 上的。这意味着 web 场景也可以创建到一个模板里,然后应用于多个主机。

任何web场景都会收集下列数据:

  • 整个场景中所有步骤的平均下载速度
  • 失败的步骤数量
  • 最近的错误信息

对于web场景的所有步骤,都会收集下列数据:

  • 平均下载速度
  • 响应时间
  • HTTP状态码

执行 web 场景收集的数据保存在数据库中。数据自动用于图形、触发器和通知。

Zabbix 还支持获取 HTML 内容中是否存在设置的字符串。还可以模拟登录动作和模拟鼠标单击。

Zabbix web 监控同时支持 HTTP 和 HTTPS。当运行 web 场景时,Zabbix 将选择跟踪重定向。重定向硬编码的最大数量为 10 。在执行 web 场景时,所有 Cookie 都会保存。

2 配置 Web 场景

配置 web 场景:

  • 转到:配置 (Configuration)-→主机 (或者 模板)
  • 点击主机 (host)/ 模板 (template) 行中的 Web
  • 点击右上角 创建 web 场景(或点击场景名字进行编辑现有的场景)
  • 在场景的表单中输入参数

场景选项卡允许您配置此 Web 场景的通用参数。

"步骤"选项卡允许您配置 Web 场景步骤。 要添加 Web 场景步骤,请在 步骤 (Steps) 单击 添加 (Add)。

2.1 配置步骤

Name:Home

URL:https://www.baidu.com

Follow redirects:√

Timeout:15s

Required status codes:200

2.2 显示

要查看定义的 Web 场景的详细数据,请转到 监控中 (Monitoring)→Web 或 最新数据 (Latest data)。 单击方案名称以查看更详细的统计信息。

可以在 监控中 (Monitoring)→仪表板 (Dashboard) 中查看 Web 监控场景的概述。

3 Web 场景步骤

3.1 创建新的 Web 场景。

我们将添加一个场景来监控Zabbix的Web界面,该场景将执行多个步骤。

点击 配置 → 主机, 选择一个主机,然后在该主机行中单击 Web 。 然后单击 创建Web场景。

在新的场景中,我们将场景命名为 Zabbix frontend ,并为其创建一个新的 Zabbix frontend 应用。

注意,我们还需要创建两个变量:{user}和{password}。

3.2 定义场景的步骤

单击 步骤 选项卡中的 添加 按钮添加单独的步骤。

Web 场景步骤 1

单击 Steps 选项卡中的 Add 按钮添加单独的步骤。

我们首先检查第一页响应是否正确,返回HTTP响应代码200,并包含文本"Zabbix SIA"。

properties 复制代码
Name:First page
URL:http://192.168.10.30/zabbix/index.php
Follow redirects: √
Timeout:15s
Required string:Zabbix SIA
Required status codes:200

完成配置步骤后,单击 添加。

Web 场景步骤 2

我们继续登录Zabbix前端,通过我们在场景级别{user}和{password}上定义的宏(变量)来实现。

注意,Zabbix前端在登录时使用JavaScript重定向,因此,我们必须先登录,只有在下一步的步骤中,我们才能检查登录功能。此外,登录步骤必须使用完整的URL以获取index.php文件 。

复制代码
Follow redirects:√
Timeout:15s
Required status codes:200

Web 场景步骤 3

登录后,我们现在应该验证一下是否登陆成功。为此,我们检查一个仅在登录后可见的字符串 - 例如Zabbix-itcast。

复制代码
Timeout:15s
Required string:Zabbix-itcast
Required status codes:200

Web 场景步骤 4

现在我们已经验证了前端是可访问的,我们可以登录并检索登录的内容,我们也应该注销 - 否则Zabbix数据库将被大量打开的会话记录占用资源。

复制代码
Follow redirects:√
Timeout:15s
Required status codes:200

Web 场景步骤 5

我们可以通过查找用户名字符串来检查我们是否已经注销了。

复制代码
Name:Logout check
URL:http://192.168.10.30/zabbix/index.php

完成步骤配置

Web 场景步骤的完整配置应如下所示:

3.3 保存配置完成的Web 监控场景。

通过以下方式查看场景 Monitoring → Web:

单击场景名称以查看更详细的统计信息:

4 Zabbix-Get的使用

Zabbix-Get是Zabbix中的一个程序,用于Zabbix-Server到Zabbix-Agent的数据获取,通常可以用来检测验证客户端的配置是否正确。

sh 复制代码
[root@linux30 zabbix]# zabbix_get -s 192.168.10.31 -k system.uname
Linux linux31 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64
[root@linux30 zabbix]#
相关推荐
拖孩28 分钟前
AI 帮我写的小程序上线 44 天:36 个人进了收银台,8 个人付钱
前端·后端·微信小程序
java1234_小锋35 分钟前
【技术专题】CSS3 网页技术 - CSS3 视觉增强
前端·css·css3
Dovis(誓平步青云)1 小时前
拖动关键帧角色就抽动,动画编辑器怎样补齐中间状态
开发语言·前端·javascript·机器学习·编辑器
Sayai1 小时前
Kafka 跨数据中心日志同步实战:MirrorMaker 2 选型对比 + Flink 中继任务落地(双中心互备与消费者组隔离避坑)
大数据·运维·分布式·flink·kafka·消息队列·高可用
lpfasd1231 小时前
pywebview与Electron
前端·javascript·electron
行走的陀螺仪1 小时前
Claude Code 从入门到实战(一):安装、登录与第一个Vue项目
前端·javascript·vue.js
梦曦i1 小时前
0.8.2 新增 backFallback 配置,无 tabbar 页返回无忧
前端·uni-app x
Amos_Web1 小时前
Rspack 源码解析(三十四):rspack_hook 与宏系统如何用过程宏生成异步 Hook 与插件
前端
恋猫de小郭1 小时前
感人,Flutter 居然有了一个超实用提案,期待落地
android·前端·flutter
wordbaby1 小时前
为什么 Apifox 能调通,浏览器却报跨域?一次“CORS Error + 403”联调排坑实录
前端