6 单位符号

概述

在Zabbix,不得不使用一些较大的数字,例如“86400”秒代表一天,这些数字既然不便又容易出错。所以可以使用一些适当的单位符号(或后缀)来简化Zabbix触发器和监控项的键值。

上例中,你可以输入“1d”来代替“85400”即可。后缀为乘法函数。

触发器表达式

触发器expression常量和函数参数支持时间和内存大小的后缀

你可以使用如下时间单位后缀:

  • s - 秒 (通常情况下,不带任何时间单位后缀就表示s)

  • m - 分钟

  • h - 小时

  • d - 天

  • w - 周

时间单位后缀也受zabbix[queue,<from>,<to>]internal item的参数和aggregate checks最后一个参数的支持。

对于内存大小你可以使用如下单位后缀:

  • K - kilobyte

  • M - megabyte

  • G - gigabyte

  • T - terabyte

可以使用的其他单位后缀

单位符号也用在前端数据的可读表述。

在Zabbix Server和前端都支持这些符号:

  • K - kilo

  • M - mega

  • G - giga

  • T - tera

当前端展示的item值为B、Bps时,那么使用base 2(1K=1024)。反之使用base 10(1K=1000)另外前端也支持如下符号展示:

  • P - peta

  • E - exa

  • Z - zetta

  • Y - yotta

使用案例

通过使用一些适当的后缀,你可以编写易懂和易维护的触发器表达式,例如下面这些表达式:

  1. {host:zabbix[proxy,zabbix_proxy,lastaccess]}>120
  2. {host:system.uptime[].last()}<86400
  3. {host:system.cpu.load.avg(600)}<10
  4. {host:vm.memory.size[available].last()}<20971520

可以被修改为:

  1. {host:zabbix[proxy,zabbix_proxy,lastaccess]}>2m
  2. {host:system.uptime.last()}<1d
  3. {host:system.cpu.load.avg(10m)}<10
  4. {host:vm.memory.size[available].last()}<20M