![在zabbix中聚合agent.ping](https://linux22.com/image/696043/%E5%9C%A8zabbix%E4%B8%AD%E8%81%9A%E5%90%88agent.ping.png)
我正在尝试设置一个 zabbix 聚合检查项来检查组上的“agent.ping”,但不幸的是,“agent.ping”在不可用时没有返回任何内容,因此当我设置触发器时它无法正常运行,我试图在触发器中使用 nodata,但我认为瓶颈在于该项目(因为 grpfunc 需要并返回一个值)。
如何设置一个聚合项,当某个组的所有“agent.ping”都关闭时,该项实际上会返回?
答案1
据我所知,没有简单的方法可以做到这一点。如果这些主机可以从服务器访问,您可以进行一些 TCP 端口检查,并进行聚合。或者,如果它们至少有一些被动项目,您可以使用zabbix[host,<type>,available]
内部项目并对此进行聚合(注意“未知”状态会影响计算)。
您还可以使用count()
触发函数with agent.ping
- 计算一个项目更新间隔内的值的数量。由于时间/性能问题,该值可能会来回偏移。
还有另一种方法 - 有一个计算项在每个项目更新间隔内为agent.ping
您提供一些信息,然后在此基础上进行聚合。在这里,当数据丢失时,计算项目可能会不受支持,从而导致主机恢复检测出现一些延迟。max()
agent.ping