概述

    因此,可计算监控项是创建虚拟数据源的一种方式,这些值将根据算术表达式定期计算。所有计算都由Zabbix服务器完成,与Zabbix agent或proxy执行的计算无关。

    生成的数据将存储在Zabbix数据库中,与其他监控项一样 -这就意味着要存储历史和趋势值,以便快速生成图表。可计算监控项可用于触发器表达式中,由宏或其它实体引用,与任何其它监控项类型相同。

    要使用可计算监控项,请选择监控项类型为 Calculated

    可配置字段

    对于每一台主机,key 是唯一的监控项标识符。您可以使用支持的符号创建任何键名。

    计算定义应在 公式 字段中输入。公式和键值之间实际上没有联系,键值参数在公式中不会以任何方式使用。

    一个简单公式的正确语法是:

    从可计算监控项公式引用的所有监控项都必须存在并且正在收集数据 (除外)。 此外,如果更改引用项的项键,则必须手动更新正在使用这个键值的公式。

    如果用于引用函数参数或常数,公式中的 用户宏 将被扩展。 如果引用函数、主机名、监控项键值、键值参数或运算符,用户宏将不会被扩展。

    更为复杂的公式可以使用函数、运算符和括号的组合。你可以使用触发器表达式支持的所有功能和 。请注意,语法略有不同,但是逻辑和运算符的优先级完全相同。

    与触发器表达式不同,Zabbix根据监控项的更新间隔来处理可计算监控项,而不是在接收到新值时处理。

    在几种情况下,可计算监控项可能不受支持:

    1. 引用的监控项

    2. 没有数据来计算一个函数

    3. 被零除

    4. 使用不正确的语法

    在Zabbix 1.8.1中引入了对可计算监控项的支持。
    从Zabbix 3.2开始,可计算监控项在某些情况下可能涉及不支持的监控项,如这些所述 , 具有不支持的监控项和未知值的表达式 和 。

    用法示例

    示例 1

    使用 last 功能:

    Zabbix将获取最新的空闲和总磁盘的空间值,并根据给定的公式计算百分比。

    示例 2

    计算Zabbix处理的数值的10分钟的平均值

    使用 avg 功能:

    请注意,长时间使用可计算监控项可能会影响Zabbix server的性能。

    示例 3

    计算eth0的总带宽

    两个功能综合:

      示例 4

      计算入站流量的百分比

      更为复杂的表达式:

      示例 5

      在可计算监控项中正确使用聚合