当前位置: 首页 > news >正文

zabbix7.0TLS-05-快速入门-触发器

文章目录

  • 1 概述
  • 2 查看主机的触发器
  • 3 添加触发器
    • 3.1 触发器配置项介绍
    • 3.2 扩展文档
      • 3.2.1 关于配置项中每个键值返回值的说明
      • 3.2.2 触发器函数文档
  • 4 验证触发器
  • 5 问题
    • 5.1 查了问题总列表
    • 5.2 查看问题详情
    • 5.3 更新处理问题
    • 5.4 查看已经处理的问题
  • 6 问题恢复

1 概述

监控项用于收集数据,但是我们并不能时刻观测每个监控项的数据,看看哪个监控项的数据超过了正常可接受的数值或状态,比如 CPU 负载高于 90%、磁盘使用率低于10%、Agent 无法和当前zabbix 服务端通信等等。

触发器(Triggers) 是可以做到实时观测监控项的数值是否在可接受的范围。

触发器会有一个数值,这个数值限制了一个监控项的值的可接受范围,通常这个数值称为 阈值

触发器有个核心的配置项: 表达式
表达式是由 监控项的键,再加上一些其他的函数、各种运算符和 阈值 组成的。表达式最后本质是一个条件判断,会进行逻辑运算,最终的运算结果是一个布尔值。

当监控项(Items)收集到的数据满足表达式的特定条件时,触发器会被激活,或者进入“问题”状态——从而引起我们的注意,让我们知道有问题发生。如果数据再次恢复到合理的范围,触发器将返回“正常”状态。

触发器被激活,会生成事件。这些事件可以用于通知、报警或执行其他操作。

2 查看主机的触发器

触发器和监控项是一样的,都是依附于某个主机。因此需要转到数据采集 → 主机,在主机列表中的任意一个主机的 触发器 列名下面,点击 触发器 就看到这个主机的所有触发器。

在这里插入图片描述

在这里插入图片描述

3 添加触发器

要为监控项配置触发器,点击 触发器 面板右上角的 创建触发器
在这里插入图片描述
这样会弹出一个 新建触发器 的表单
在这里插入图片描述

3.1 触发器配置项介绍

触发器必填项只有两个:

  • 名称
    这个值会作为触发器的名称被显式在列表和其他地方。

  • 表达式
    通常由监控项(item)和运算符构成。可以直接在表达式输入框中编写,也可以点击表达式右侧的 添加 按钮图形化方式添加(新手推荐)。
    例如这里还是沿用上一篇文件中添加的 监控项 Agent 状态 来新增一个触发器。
    那我们就创建一个名为 Agent 离线 的触发器吧。
    在这里插入图片描述
    点击 添加 按钮后,会弹出 条件 表单面板。
    在这里插入图片描述

    • 监控项
      这里只能选择已经给这台主机配置好的监控项。
      需要点击 选择按钮,从这个主机的已配置的监控项中找到之前添加的监控项 Agent 状态,并点击它。
      在这里插入图片描述

    • 功能
      在这里可以根据监控项的返回值,选择合适的触发器函数,以便监控项的值进行处理计算。

      比如需要选择监控项最后一次返回的值作为数据源进行判断,就可以选择 last() 这个函数。
      这里有个特殊的触发器函数 nodata(),这个函数的行为是:

      1. nodata() 函数的返回值依赖于 Zabbix Server 是否在指定时间段内接收到监控项的数据。
      2. 如果 Agent 停止,Zabbix Server 在监控期间没有收到任何数据,因此 nodata() 函数返回 1,表示在指定时间内没有数据。

      此示例 Agent 状态 监控项的键值是 agent.ping , 正常此监控项会返回 1, 如果 Agent 服务关闭,或者无法和Zabbix server 正常通信,zabbix server 都会无法收到数据,因此这里需要使用 nodata() 函数。
      在这里插入图片描述
      在这里插入图片描述

    • 最后一个 (T)
      这个是选择一个最近的时间范围,用于检查Zabbix server 在最近的一个时间段内是否接收到数据。
      周期不应小于30秒,因为历史记录同步器进程仅每30秒计算一次此函数;不允许使用 nodata(/host/key,0)

      这里需要注意的是数据的更新频率
      nodata()函数的行为依赖于数据的更新频率。如果您的 agent.ping 项的更新间隔较长(例如,默认的 30 秒),在短时间内查询 nodata() 可能会返回 1,因为在指定的时间段内没有接收到数据。
      为了实验目的,重新调整监控项的 更新间隔 为 5s。
      在这里插入图片描述

    之后设置 触发器 中的 最后一个(T) 为 30s 。
    在这里插入图片描述

    • Mode
      如果设置为strict (双引号),此函数将对代理可用性不敏感(详细信息请参阅官方文档)。
      这里可以先不设置。

    • 结果
      结果就是对触发器函数的结果进行逻辑运算,支持的运算符:
      在这里插入图片描述
      对于此示例中的触发器函数 nodata() 来说,需要配值为 =1 ,因为函数返回 1 说明没有收到数据,需要触发事件。
      在这里插入图片描述

      • 间隔
        不同的配置项,不同的函数,会有不同的配置项,比如有的函数会有 间隔。就是这个触发器每隔多长时间,对表达式计算一次,单位是秒。
        在这里插入图片描述

最后点击 添加 按钮,此触发器算是配置完成,并会出现在主机的触发器列表里。
在这里插入图片描述

点击 所有主机 返回主机列表。
在这里插入图片描述

会看到主机的 触发器 数量会增加
在这里插入图片描述

3.2 扩展文档

3.2.1 关于配置项中每个键值返回值的说明

zabbix 自带的键值,他们的返回值有不同的类型,对于这个的说明可以使用如下方法查看到。
在这里插入图片描述
在这里插入图片描述

每个键值的右侧都有简短的说明,也可以点击键值最右的问号 ?,跳转到官方文档。
在这里插入图片描述

3.2.2 触发器函数文档

内个版本所支持的函数不同,且参数也有可能变化,因此要找对对应版本的文档。

7.0 的文档:
https://www.zabbix.com/documentation/7.0/zh/manual/appendix/functions

4 验证触发器

对于触发器 Agent 状态的验证,这里可以直接停止掉对应主机上的 zabbix-agent2 服务。当Agent 无法和服务器正常通信后,服务端的数据就不会接受到数据了。

 systemctl stop zabbix-agent2

在这里插入图片描述

5 问题

5.1 查了问题总列表

当有任何触发器被触发后,都会在 监测 —> 问题 页面的问题列表里出现。
在这里插入图片描述

这里汇总了所有主机的问题,可以根据各种条件进行过滤。
在这里插入图片描述

同时也可以在 监测 —> 主机 页面的列表里,查看到每个主机都有几个问题。
在这里插入图片描述

这里要说明的是,刚才我们把 gensu-dev 主机的 Agent 停掉了,所以这里它的 ZBX 是红色的,那它的问题 也就没法获取到了。
因为 Agent 不可用的文件级别更高,所以低级别的问题就没比较显示了,这个现象也称为 收敛

而主机 Zabbix server 是我环境里的Zabbix server部署在的服务器,有个问题 1, 就是之前 问题 页面列表里出现的一个 CPU负载的问题。
点击黄色方块中的 1 ,可以直接跳转到 问题 页面。
在这里插入图片描述

5.2 查看问题详情

在这里插入图片描述
在这里插入图片描述

5.3 更新处理问题

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

5.4 查看已经处理的问题

在这里插入图片描述
在这里插入图片描述

6 问题恢复

在刚才的主机上启动 Agent 服务

systemctl start zabbix-agent2

之后查看 监测–> 主机 页面,发现主机 gansu-dev 的 ZBX 已经回复了
在这里插入图片描述
问题 列表中,也会不再显示已经恢复的问题(即使是已经处理的过的问题,一会正常恢复)。
在这里插入图片描述

http://www.lryc.cn/news/419206.html

相关文章:

  • vue关于双向数据绑定的骚操作
  • 基于Jeecgboot3.6.3的vue3版本的流程中仿钉钉流程的鼠标拖动功能支持
  • Docker Compse单机编排
  • “AI+Security”系列第2期(一):对抗!大模型自身安全的攻防博弈
  • Python Static Typing: 提升代码可靠性与可读性的使用技巧
  • Datawhale多模态赛事(1)
  • 云手机在海外社交媒体运营中的作用
  • Ubuntu怎么进入救援模式或单用户模式
  • 学习鸿蒙-构建私有仓储
  • 经验是负债,学习是资产
  • 电脑屏幕录制工具分享5款,附上详细电脑录屏教程(2024全新)
  • Docker资源隔离的实现策略以及适用场景
  • PLL基本原理、设计及应用
  • Qt实现类似淘宝商品看板的界面,带有循环翻页以及点击某页跳转的功能
  • 2024下半年国际学术会议一览表
  • serial靶场
  • 如何在Vue3项目中引入并使用Echarts图表
  • C# 子类、接口
  • Qt实现圆形窗口
  • LeetCode 算法:有效的括号 c++
  • react和vue的diff算法的差别
  • 算法【滑动窗口】
  • 【RISC-V设计-06】- RISC-V处理器设计K0A之ALU
  • MyIP:强大且简单好用!
  • Redis作为缓存,如何与MySql的数据进行同步?
  • Android 通知栏推送功能
  • 【LVS】防火墙mark标记解决调度问题
  • 算法笔记|Day20回溯算法II
  • Oracle认证1Z0-071线上考试注意事项
  • 【C++ 面试 - 基础题】每日 3 题(八)