除非另有说明,此处列出的所有函数均支持在以下环境中使用:
聚合函数可以与以下任一项一起使用:
min(/host/key,1h)
min(last_foreach(/*/key))
(仅在计算型监控项中使用;不能在触发器中使用)以下列出的函数没有附加说明。点击函数名称可查看详细信息。
函数 | 描述 |
---|---|
avg | 在定义的评估周期内,监控项的平均值。 |
bucket_percentile | 根据直方图的桶计算百分位数。 |
count | 由foreach函数返回的array中的值的数量。 |
histogram_quantile | 根据直方图的桶计算φ-分位数。 |
item_count | 在配置中,符合过滤条件的现有监控项的数量。 |
kurtosis | 在定义的评估周期内,收集值的概率分布的“尾部厚度”。 |
mad | 在定义的评估周期内,收集值的中位绝对偏差。 |
max | 在定义的评估周期内,监控项的最高值。 |
min | 在定义的评估周期内,监控项的最低值。 |
skewness | 在定义的评估周期内,收集值的概率分布的不对称性。 |
stddevpop | 在定义的评估周期内,收集值的总体标准差。 |
stddevsamp | 在定义的评估周期内,收集值的样本标准差。 |
sum | 在定义的评估周期内,收集值的总和。 |
sumofsquares | 在定义的评估周期内,收集值的平方和。 |
varpop | 在定义的评估周期内,收集值的总体方差。 |
varsamp | 在定义的评估周期内,收集值的样本方差。 |
/host/key
是引用 主机 监控项 历史记录的函数常用的第一个必选参数(sec|#num)<:time shift>
是引用 主机 监控项 历史记录的函数常用的第二个参数,其中:
关于函数参数的一些通用说明:
<
>
表示/host/key
和 (sec|#num)<:time shift>
参数永远不要用引号括起在定义的评估周期内,某个监控项的平均值。
支持的值类型:float、integer。
支持的foreach functions:avg_foreach、count_foreach、exists_foreach、last_foreach、max_foreach、min_foreach、sum_foreach。
参数:请参阅 通用参数。
当需要将当前平均值与之前某个时间段的平均值进行比较时,时间偏移非常有用。
示例:
avg(/主机/key,1h) #从现在起过去一小时的平均值
avg(/主机/key,1h:now-1d) #从25小时前到24小时前的平均值
avg(/主机/key,#5) #最近五个值的平均值
avg(/主机/key,#5:now-1d) #排除最近24小时接收到的值后的最近五个值的平均值
从直方图的桶中计算百分位数。
参数:
备注:
histogram_quantile(percentage/100, bucket_rate_foreach(item filter, time period, 1))
的一个 alias。由一个 foreach 函数返回的 array 中值的数量。
支持的 foreach functions:avg_foreach、count_foreach、exists_foreach、last_foreach、max_foreach、min_foreach、sum_foreach。
参数:
operators
:pattern
中给出pattern
中给出备注:
pattern
参数可以指定为两个数字,用 '/' 分隔:number_to_compare_with/mask。count() 会从值和 mask 计算“按位与”,并将结果与 number_to_compare_with 进行比较。如果“按位与”的结果等于 number_to_compare_with,则该值会被计数。pattern
参数可以是普通正则表达式或 全局正则表达式(以 '@' 开头)正则表达式。对于全局正则表达式,其大小写敏感性继承自全局正则表达式设置。为了正则匹配的目的,float 值将始终以 4 小数点后四位数字表示。同时请注意,对于大数值,存储在数据库中的十进制表示与 Zabbix server 使用的二进制表示之间的差异可能会影响第四位小数。示例:
count(max_foreach(/*/net.if.in[*],1h)) #统计过去一小时中接收到数据的 net.if.in 监控项 数量
count(last_foreach(/*/vfs.fs.dependent.size[*,pused]),"gt",95) #file 系统中已使用磁盘空间超过 95% 的数量
从直方图的桶中计算φ分位数。
支持的foreach function:bucket_rate_foreach。
参数:
备注:
示例:
histogram_quantile(0.75,1.0,last(/主机/rate_bucket[1.0]),"+Inf",last(/主机/rate_bucket[Inf]))
histogram_quantile(0.5,bucket_rate_foreach(//item_key,30s))
配置中符合过滤条件的现有监控项的数量。
支持的值类型:integer。
参数:
备注:
示例:
在定义的评估周期内,收集值的概率分布的“尾部性”。另请参阅:Kurtosis。
支持的值类型:float、integer。
支持的 foreach function:last_foreach。
参数:请参阅通用参数。
示例:
定义评估周期内采集数值的中位数绝对偏差。另请参见:Median absolute deviation。 支持的值类型:float、integer。 支持的 foreach function:last_foreach。
参数:请参阅常见参数。
示例:
定义的评估周期内,监控项 的最大值。 支持的值类型:float、integer。 支持的 foreach functions:avg_foreach、count_foreach、exists_foreach、last_foreach、max_foreach、min_foreach、sum_foreach。
参数:请参阅常见参数。
示例:
在定义的评估周期内,某个 监控项 的最小值。
支持的值类型:float、integer。
支持的 foreach functions:avg_foreach、count_foreach、exists_foreach、last_foreach、max_foreach、min_foreach、sum_foreach。
参数:请参阅 通用参数。
示例:
在定义的评估周期内,所收集数值的概率分布的不对称性。另请参阅:Skewness。
支持的值类型:float、integer。
支持的 foreach function:last_foreach。
参数:请参阅通用参数。
示例:
在定义的评估周期内收集值的总体标准差。另请参阅:Standard deviation。
支持的值类型:float、integer。
支持的foreach function:last_foreach。
参数:请参阅通用参数。
示例:
在定义的评估周期内收集值的样本标准差。另请参阅:Standard deviation。
支持的值类型:float、integer。
支持的foreach function:last_foreach。
参数:请参阅通用参数。
此函数至少需要两个数据值才能运行。
示例:
在定义的评估周期内收集值的总和。
支持的值类型: float, integer。
支持的 foreach functions: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach。
参数: 请参阅 通用参数。
示例:
在定义的评估周期内收集值的平方和。
支持的值类型:float、integer。
支持的foreach function:last_foreach。
参数:请参阅通用参数。
示例:
在定义的评估周期内收集值的总体方差。另请参见:Variance。 支持的值类型:float、integer。 支持的 foreach function:last_foreach。
参数:请参阅常见参数。
示例:
在定义的评估周期内收集值的样本方差。另请参阅:Variance。
支持的值类型:float,integer。
支持的foreach function:last_foreach。
参数:请参阅通用参数。
此函数至少需要两个数据值才能运行。
示例: