你可以基于其它监控项创建计算监控项。
因此,计算监控项是创建虚拟数据源的一种方式。这些值将根据算术表达式定期计算。所有计算都由Zabbix服务器完成,与Zabbix代理或代理服务器执行的计算无关。
生成的数据将存储在Zabbix数据库中,与其它任何监控项一样 - 这意味着存储历史和趋势值,以便快速生成图表。 计算的监控项可用于触发器表达式,由宏或其它实体引用,与任何其它监控项类型相同。
要使用计算监控项,请选择监控项类型 Calculated。
key是唯一的监控项标识符(每个主机)。你可以使用支持的符号创建任何Key名称。
计算定义应在Formula字段中输入。公式和密钥之间几乎没有连接。Key参数不能以任何方式用于公式中。
一个简单公式的正确语法是:
当:
参数 定 | |
---|---|
func | 触发器表达式支持的functions:last、min、max、avg、count等 |
key | 其数据要使用的另一个监控项的密钥。它可以被定义为key或hostname:key。 注意: 将整个Key放在双引号(“...”)中,强烈建议避免由于Key内的空格或逗号而导致错误的解析。 如果Key中也有引用的参数,则必须使用反斜杠(\)来转义这些双引号。 参考下面的 示例5 |
parameter(s) | 功能参数(如果需要)。 |
<note tip>从计算监控项公式引用的所有监控项都必须存在并且正在收集数据(功能和不支持的监控项除外)。另外,如果更改引用监控项的Key,则必须使用该Key手动更新任一公式。 :::
<note important>如果用于引用函数参数或常量,公式中的用户宏将被扩展。如果引用函数、主机名、监控项Key、监控项key参数或运算符,则用户宏将不会被扩展。 :::
更复杂的公式可以使用函数,运算符和括号的组合。你可以使用触发器表达式支持的所有功能和operators 。请注意,语法略有不同,但逻辑和运算符优先级完全相同。
与触发器表达式不同,Zabbix根据监控项更新间隔处理计算监控项,而不是在接收到新值时处理。
如果计算结果为浮点值,且如果计算的信息类型为Numeric(无符号),则该值将被修剪为整数。
在几种情况下,计算监控项可能不受支持:
在Zabbix 1.8.1中引入了对计算监控项的支持。
从Zabbix3.2开始,计算监控项在某些情况下可能涉及不符合要求的项目,如这些所述 功能和不受支持的监控项, 具有不支持的监控项和未知值的表达式 和 操作.
计算'/'上可用磁盘空间的百分比。
使用last功能:
Zabbix将获取最新的空闲和总磁盘空间值,并根据给定的公式计算百分比。
计算Zabbix处理的数值的10分钟平均值。
使用avg功能:
请注意,大量使用长时间计算的监控项可能会影响Zabbix服务器的性能。
计算eth0上的总带宽。
两个功能总和:
计算入站流量的百分比。
更复杂的表达式:
在计算监控项中正确使用聚合。
记下双引号在引号键内如何转义: