此处列出的所有函数都支持:
下面列出的函数没有附加信息。点击该函数查看完整的详细信息。
函数 | 说明 |
---|---|
change | 上一个值和最新值之间的差值。 |
changecount | 在定义的评估期内相邻值之间的变化数值。 |
count | 在定义的评估期内的值计数。 |
countunique | 在定义的评估期内唯一值的数量。 |
find | 在定义的评估期间查找匹配的值。 |
first | 在定义的评估间内的第一个(最早的)值。 |
fuzzytime | 检查被动代理时间与Zabbix server/proxy 时间的差异。 |
last | 最新的值。 |
logeventid | 检查最后一个日志条目的事件ID是否与正则表达式匹配。 |
logseverity | 最后一个日志条目的日志严重性。 |
logsource | 检查最后一个日志条目的日志源是否匹配正则表达式。 |
monodec | 检查值是否单调下降。 |
monoinc | 检查值是否单调增加。 |
nodata | 检查是否未收到数据。 |
percentile | 周期的第P个百分位数,其中P(百分比)由第三个参数指定。 |
rate | 在定义的时间段内,单调递增的计数器每秒的平均递增速率。 |
/host/key
是引用主机监控项历史记录函数的常用强制性首选参数(sec|#num)<:time shift>
是引用主机监控项历史记录函数的常用强制性次选参数 ,其中:
关于函数参数的一般性说明:
<
>
表示/host/key
和(sec|#num)<:time shift>
参数绝对不能加引号上一个值和最新值之间的差值。
支持的值类型:浮点、整数、字符串、文本、日志。
对于字符串返回:0 - 值相等; 1 - 值不同。
备注:
+4
-2
-2.5
示例:
在定义的评估期内相邻值之间的变化数值。
支持的值类型:浮点、整数、字符串、文本、日志。
参数:
对于非数值类型,忽略 mode参数。
示例:
changecount(/host/key,1w) #the number of value changes for the last week until now
changecount(/host/key,#10,"inc") #the number of value increases (relative to the adjacent value) among the last 10 values
changecount(/host/key,24h,"dec") #the number of value decreases (relative to the adjacent value) for the last 24 hours until now
在定义的评估期内的值计数。
支持的值类型:浮点、整数、字符串、文本、日志。
参数:
运算符
:pattern
中区分大小写匹配给定的正则表达式pattern
中不区分大小写匹配给定的正则表达式备注:
pattern
参数可以被指定为两个数字, 由 '/'分隔:number_to_compare_with/mask。count()从值和掩码中计算“按位与” ,并将结果与number_to_compare_with进行比较。如果"按位与" 的结果等于 number_to_compare_with,则对该值进行计数。pattern
参数可以是普通 或者全局 (以 '@'开头)正则表达式。在全局正则表达式的情况下,区分大小写是从全局正则表达式设置继承的。 出于正则表达式匹配的目的,浮点值将始终在 '.'之后用4个十进制数字表示。还要注意的是对于大数字,十进制(存储在数据库中)和二进制(由Zabbix Server使用)表示的差异可能会影响第四个十进制数字。示例:
count(/host/key,10m) #the values for the last 10 minutes until now
count(/host/key,10m,"like","error") #the number of values for the last 10 minutes until now that contain 'error'
count(/host/key,10m,,12) #the number of values for the last 10 minutes until now that equal '12'
count(/host/key,10m,"gt",12) #the number of values for the last 10 minutes until now that are over '12'
count(/host/key,#10,"gt",12) #the number of values within the last 10 values until now that are over '12'
count(/host/key,10m:now-1d,"gt",12) #the number of values between 24 hours and 10 minutes and 24 hours ago from now that were over '12'
count(/host/key,10m,"bitand","6/7") #the number of values for the last 10 minutes until now having '110' (in binary) in the 3 least significant bits
count(/host/key,10m:now-1d) #the number of values between 24 hours and 10 minutes and 24 hours ago from now
在定义的评估期内唯一值的数量。
支持的值类型:浮点、整数、字符串、文本、日志。
参数:
运算符
:pattern
中区分大小写匹配给定的正则表达式pattern
中不区分大小写匹配给定的正则表达式备注:
pattern
参数可以被指定为两个数字, 由 '/'分隔:number_to_compare_with/mask。count()从值和掩码中计算“按位与” ,并将结果与number_to_compare_with进行比较。如果"按位与" 的结果等于 number_to_compare_with,则对该值进行计数。pattern
参数可以是普通 或者全局 (以 '@'开头)正则表达式。在全局正则表达式的情况下,区分大小写是从全局正则表达式设置继承的。 出于正则表达式匹配的目的,浮点值将始终在 '.'之后用4个十进制数字表示。还要注意的是对于大数字,十进制(存储在数据库中)和二进制(由Zabbix Server使用)表示的差异可能会影响第四个十进制数字。示例:
countunique(/host/key,10m) #the number of unique values for the last 10 minutes until now
countunique(/host/key,10m,"like","error") #the number of unique values for the last 10 minutes until now that contain 'error'
countunique(/host/key,10m,,12) #the number of unique values for the last 10 minutes until now that equal '12'
countunique(/host/key,10m,"gt",12) #the number of unique values for the last 10 minutes until now that are over '12'
countunique(/host/key,#10,"gt",12) #the number of unique values within the last 10 values until now that are over '12'
countunique(/host/key,10m:now-1d,"gt",12) #the number of unique values between 24 hours and 10 minutes and 24 hours ago from now that were over '12'
countunique(/host/key,10m,"bitand","6/7") #the number of unique values for the last 10 minutes until now having '110' (in binary) in the 3 least significant bits
countunique(/host/key,10m:now-1d) #the number of unique values between 24 hours and 10 minutes and 24 hours ago from now
在定义的评估期间查找匹配的值。
支持的值类型:浮点、整数、字符串、文本、日志。
返回值: 1 - 找到; 0 - 否则。
参数:
运算符
:pattern
中区分大小写匹配给定的正则表达式pattern
中不区分大小写匹配给定的正则表达式运算符
是 regexp, iregexp。备注:
当处理多个值时, 如果至少有一个匹配值,则返回“1”;
like不支持作为整数值的运算符;
不支持like 和 bitand 作为浮点数值的运算符;
对于字符串、文本和日志值,仅支持eq, ne, like, regexp and iregexp 运算符;
使用regexp or iregexp 作为运算符,第四个 pattern
参数可以是普通 或者全局 (以 '@'开头)正则表达式。在全局正则表达式的情况下,区分大小写是从全局正则表达式设置继承的。
示例:
find(/host/key,10m,"like","error") #find a value that contains 'error' within the last 10 minutes until now
在定义的评估间内的第一个(最早的)值。
支持的值类型:浮点、整数、字符串、文本、日志。
参数:
另参见 last()。
示例:
检查被动代理时间与Zabbix server/proxy 时间的差异。
支持的值类型:浮点、整数。
返回值:1 - 被动监控项值(作为时间戳)和Zabbix server/agent 时间戳(值收集的时钟)之间的差异小于或等于T秒; 0 - 否则。
参数:
备注:
vfs.file.time[/path/file,modify]
键来检查文件是否长时间没有更新;fuzzytime(/Host/system.localtime,60s)=0 或者 last(/Host/trap)<>0
。示例:
最新的值。
支持的值类型:浮点、整数、字符串、文本、日志。
参数:
备注:
last()
总是等于 last(#1)
; last(#3)
- 第三个最近的值(不是三个最近的值);示例:
last(/host/key) #retrieve the last value
last(/host/key,#2) #retrieve the previous value
last(/host/key,#1) <> last(/host/key,#2) #the last and previous values differ
检查最后一个日志条目的事件ID是否与正则表达式匹配。.
支持的值类型:日志。
返回值: 0 - 不匹配; 1 - 匹配。
参数:
最后一个日志条目的日志严重性。
支持的值类型:日志。
返回值: 0 - 默认严重性; N - 严重性 (整数,适用于Windows事件日志: 1 -信息, 2 - 警告, 4 - 错误, 7 - 失败审计, 8 - 成功审计,9 - 严重, 10 - 详细)。
参数:
Zabbix从Windows事件日志的信息 字段获取日志严重性。
检查最后一个日志条目的日志源是否匹配正则表达式。
支持的值类型:日志。
返回值: 0 - 不匹配; 1 - 匹配。
参数:
通常用于Windows事件日志。
示例:
检查值是否单调下降。
支持的值类型: 整数。
返回值: 1 - 如果时间段中的所有元素连续减少; 0 - 否则。
参数:
示例:
monodec(/Host1/system.swap.size[all,free],60s) + monodec(/Host2/system.swap.size[all,free],60s) + monodec(/Host3/system.swap.size[all,free],60s) #calculate in how many hosts there has been a decrease in free swap size
检查值是否单调增加。
支持的值类型: 整数。
返回值: 1 - 如果时间段中的所有元素连续增加; 0 - 否则。
参数:
示例:
monoinc(/Host1/system.localtime,#3,"strict")=0 #check if the system local time has been increasing consistently
检查是否未收到数据。
支持的值类型:浮点、整数、字符串、文本、日志。
返回值: 1 -如果在定义的时间段内没有接收到数据; 0 - 否则。
参数:
nodata(/host/key,0)
。备注:
nodata(/host/key,5m,"strict")
;在这种情况下,该函数将在没有数据的评估期(五分钟)结束后立即启动。周期的第P个百分位数,其中P(百分比)由第三个参数指定。
支持的值类型:浮点、整数。
参数:
在定义的时间段内,单调递增的计数器每秒的平均递增速率。
支持的值类型:浮点、整数。
参数:
功能上对应于PromQL的 'rate' 。
示例:
rate(/host/key,30s) #if the monotonic increase over 30 seconds is 20, this function will return 0.67.
参见 所有支持的函数。