2022 Zabbix中国峰会
2022 Zabbix中国峰会

2 按位运算函数

此处列出的所有函数都支持:

下面列出的函数没有附加信息。点击该函数查看完整的详细信息。

函数 说明
bitand 监控项值和掩码"按位与"的值。
bitlshift 监控项值按位左移。
bitnot 监控项值"按位非"的值。
bitor 监控项值和掩码"按位或"的值。
bitrshift 监控项值按位右移。
bitxor 监控项值和掩码"按位异或"的值。

###函数详情

关于函数参数的一般性说明:

  • 函数参数用逗号分隔
  • 表达式可以用作参数
  • 可选函数参数(或参数部分)由< >表示
bitand(value,mask)

监控项值和掩码"按位与"的值。
支持的值类型: 整数

参数:

  • value - 要检查的值;
  • mask (必须) - 64位无符号整数 (0 - 18446744073709551615)。

虽然比较是按位方式进行的,但必须提供所有值并以十进制返回。例如,检查第3位是通过与4进行比较来完成的,而不是100。

示例:

bitand(last(/host/key),12)=8 or bitand(last(/host/key),12)=4 #3rd or 4th bit set, but not both at the same time
       bitand(last(/host/key),20)=16 #3rd bit not set and 5th bit set
bitlshift(value,bits to shift)

监控项值按位左移。
支持的值类型: 整数

参数:

  • value - 要检查的值;
  • bits to shift (必须) - 要移位的位数。

虽然比较是按位方式进行的,但必须提供所有值并以十进制返回。例如,检查第3位是通过与4进行比较来完成的,而不是100。

bitnot(value)

监控项值"按位非"的值。
支持的值类型: 整数

参数:

  • value - 要检查的值;

虽然比较是按位方式进行的,但必须提供所有值并以十进制返回。例如,检查第3位是通过与4进行比较来完成的,而不是100。

bitor(value,mask)

监控项值和掩码"按位或"的值。
支持的值类型: 整数

参数:

  • value - 要检查的值;
  • mask (必须) - 64位无符号整数 (0 - 18446744073709551615)。

虽然比较是按位方式进行的,但必须提供所有值并以十进制返回。例如,检查第3位是通过与4进行比较来完成的,而不是100。

bitrshift(value,bits to shift)

监控项值按位右移。
支持的值类型: 整数

参数:

  • value - 要检查的值;
  • bits to shift (必须) - 要移位的位数。

虽然比较是按位方式进行的,但必须提供所有值并以十进制返回。例如,检查第3位是通过与4进行比较来完成的,而不是100。

bitxor(value,mask)

监控项值和掩码"按位异或"的值。
支持的值类型: 整数

参数:

  • value - 要检查的值;
  • mask (必须) - 64位无符号整数 (0 - 18446744073709551615)。

虽然比较是按位方式进行的,但必须提供所有值并以十进制返回。例如,检查第3位是通过与4进行比较来完成的,而不是100。

参见 所有支持的函数