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(),这个函数的行为是:nodata()函数的返回值依赖于 Zabbix Server 是否在指定时间段内接收到监控项的数据。- 如果 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 已经回复了

问题 列表中,也会不再显示已经恢复的问题(即使是已经处理的过的问题,一会正常恢复)。

相关文章:
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 概述 监控项用于…...
vue关于双向数据绑定的骚操作
组件传值大家都知道 直接上代码 computed: {optionModel: {get() {return this.selectedWidget.options;},set(newValue) {this.selectedWidget.options newValue;}}} 我们将optionModel传递给子组件 子组件可以直接修改props 来实现双向数据绑定 但是正常来时我们是不能修…...
基于Jeecgboot3.6.3的vue3版本的流程中仿钉钉流程的鼠标拖动功能支持
因为这个项目license问题无法开源,更多技术支持与服务请加入我的知识星球。 1、因为原先仿钉钉流程里不能进行鼠标拖动来查看流程,所以根据作者提供的信息进行修改,在hooks下增加下面文件useDraggableScroll.ts import { ref, onMounted, on…...
Docker Compse单机编排
一.Docker Compse 介绍 Docker Compose 是一个用于定义和运行多容器 Docker 应用程序的工具。通过 Compose,你可以使用 YAML 文件来配置应用程序的服务、网络和卷,然后使用单个命令创建和启动所有服务。这使得在开发、测试和部署过程中管理多容器应用程…...
“AI+Security”系列第2期(一):对抗!大模型自身安全的攻防博弈
近日,由安全极客、Wisemodel 社区和 InForSec 网络安全研究国际学术论坛联合主办的“AISecurity”系列第 2 期——对抗!大模型自身安全的攻防博弈线上活动如期举行。本次活动邀请了君同未来创始人兼 CEO 韩蒙、前阿里云高级安全专家郑瀚、ChaMd5 AI 组负…...
Python Static Typing: 提升代码可靠性与可读性的使用技巧
💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「storm…...
Datawhale多模态赛事(1)
赛事说明:https://tianchi.aliyun.com/competition/entrance/532251/introduction?spma2c22.12281925.0.0.2f307137p8qZmp 学习平台:https://linklearner.com/home 第一天 1.报名赛道学习赛事 https://tianchi.aliyun.com/competition/entrance/53225…...
云手机在海外社交媒体运营中的作用
随着社交媒体的全球普及,海外社交媒体运营成为众多企业与个人提升品牌影响力和扩大市场份额的重要策略。在这一进程中,海外云手机以其独特的功能,为海外社交媒体运营提供了强大的支持。 那么,海外云手机在海外社交媒体运营中究竟扮…...
Ubuntu怎么进入救援模式或单用户模式
进入救援模式(Rescue Mode)或单用户模式(Single User Mode)的方法取决于你所使用的Linux发行版。以下是通用的步骤,适用于大多数基于GRUB引导的系统,如Ubuntu、Debian、CentOS等: 重启你的系统。…...
学习鸿蒙-构建私有仓储
1.选择 鸿蒙提供ohpm-repo工具用于构建本地私有仓储 ohpm-repo下载 2.环境配置 安装node,ohpm-repo 支持 node.js 18.x 及以上版本 node最新版本下载 3.配置文件及运行 1.解压 ohpm-repo 私仓工具包 2.进入 ohpm-repo 解压目录的 conf 目录内,打开 c…...
经验是负债,学习是资产
经验是负债,学习是资产 经验是负债,学习是资产。这是李嘉诚先生的一句名言。他一语道出了学习在企业发展中的推动作用。 企业家经营的目的,无非就是将利润最大化。企业能够产生利润,靠的是提升自身业绩、降低运营成本,…...
电脑屏幕录制工具分享5款,附上详细电脑录屏教程(2024全新)
日月更迭,转眼间已经来到了2024年的立秋,在这个数字技术快速发展的时代,电脑录屏技术已经成为了一项不可或缺的技能,无论是用于工作汇报、在线教学、游戏直播还是个人娱乐。那么录屏软件哪个好用呢?接下来,…...
Docker资源隔离的实现策略以及适用场景
Docker通过多种技术实现资源隔离,确保不同容器之间相互独立并有效利用主机资源。 以下是Docker资源隔离的主要实现策略以及适用场景: 实现策略 1、命名空间(Namespaces) 进程命名空间(PID Namespace): 隔…...
PLL基本原理、设计及应用
PLL基本原理 锁相环(Phase-Locked Loop, PLL)是一种基本的反馈控制系统,广泛应用于电子通信、信号处理、时钟同步等多个领域。PLL通过反馈机制锁定输入信号的频率和相位,从而实现输出信号与输入信号的同步。其基本工作原理可以概…...
Qt实现类似淘宝商品看板的界面,带有循环翻页以及点击某页跳转的功能
效果如下: #ifndef ModelDashboardGroup_h__ #define ModelDashboardGroup_h__#include <QGridLayout> #include <QLabel> #include <QPushButton> #include <QWidget>#include <QLabel> #include <QWidget> #include <QMou…...
2024下半年国际学术会议一览表
在科技与人文的交汇点,2024年的国际学术会议季即将拉开帷幕,一系列聚焦于计算机科学与人工智能、工程与技术、教育与社会科学的盛会,不仅展示了全球学术研究的最新成果,更促进了跨学科交流与合作,为未来的科技发展与社…...
serial靶场
项目地址 https://download.vulnhub.com/serial/serial.zip 实验过程 将下载好的靶机导入到VMware中,设置网络模式为NAT模式,然后开启靶机虚拟机 使用C段扫描,获取靶机IP地址 arp-scan -l 扫描一下端口 nmap -sV -p- 192.168.48.149 查看…...
如何在Vue3项目中引入并使用Echarts图表
在Vue 3项目中引入并使用ECharts图表,你可以通过npm或yarn来安装ECharts,然后在Vue组件中引入并使用它。以下是一个基本的步骤指南: 1. 安装ECharts 首先,你需要在你的Vue 3项目中安装ECharts。打开你的终端或命令提示符&#x…...
C# 子类、接口
栏目总目录 子类 继承的概念 继承机制:C#支持单继承,即一个类只能直接继承自一个基类。但基类本身可以继承自另一个类,从而实现继承链。继承关键字:使用冒号(:)表示继承关系,子类在声明时指定…...
Qt实现圆形窗口
重新实现paintEvent()函数。 效果如下: 效果为蓝色区域,背景是vs接面,代码直接复制可用,留给有需要的人。 #ifndef CircleWidget_h__ #define CircleWidget_h__#include <QWidget>class CCircleWidget : public QWidget {Q…...
Linux链表操作全解析
Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表?1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...
.Net框架,除了EF还有很多很多......
文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...
HBuilderX安装(uni-app和小程序开发)
下载HBuilderX 访问官方网站:https://www.dcloud.io/hbuilderx.html 根据您的操作系统选择合适版本: Windows版(推荐下载标准版) Windows系统安装步骤 运行安装程序: 双击下载的.exe安装文件 如果出现安全提示&…...
unix/linux,sudo,其发展历程详细时间线、由来、历史背景
sudo 的诞生和演化,本身就是一部 Unix/Linux 系统管理哲学变迁的微缩史。来,让我们拨开时间的迷雾,一同探寻 sudo 那波澜壮阔(也颇为实用主义)的发展历程。 历史背景:su的时代与困境 ( 20 世纪 70 年代 - 80 年代初) 在 sudo 出现之前,Unix 系统管理员和需要特权操作的…...
HTML前端开发:JavaScript 常用事件详解
作为前端开发的核心,JavaScript 事件是用户与网页交互的基础。以下是常见事件的详细说明和用法示例: 1. onclick - 点击事件 当元素被单击时触发(左键点击) button.onclick function() {alert("按钮被点击了!&…...
智能仓储的未来:自动化、AI与数据分析如何重塑物流中心
当仓库学会“思考”,物流的终极形态正在诞生 想象这样的场景: 凌晨3点,某物流中心灯火通明却空无一人。AGV机器人集群根据实时订单动态规划路径;AI视觉系统在0.1秒内扫描包裹信息;数字孪生平台正模拟次日峰值流量压力…...
自然语言处理——循环神经网络
自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元(GRU)长短期记忆神经网络(LSTM)…...
MySQL用户和授权
开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务: test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...
GitFlow 工作模式(详解)
今天再学项目的过程中遇到使用gitflow模式管理代码,因此进行学习并且发布关于gitflow的一些思考 Git与GitFlow模式 我们在写代码的时候通常会进行网上保存,无论是github还是gittee,都是一种基于git去保存代码的形式,这样保存代码…...
push [特殊字符] present
push 🆚 present 前言present和dismiss特点代码演示 push和pop特点代码演示 前言 在 iOS 开发中,push 和 present 是两种不同的视图控制器切换方式,它们有着显著的区别。 present和dismiss 特点 在当前控制器上方新建视图层级需要手动调用…...
