概述
aggregate checks是一个聚合的检测,例如我想知道某个组的host负载平均值,硬盘剩余总量,或者某几台机器的这些数据,简单的说,这个方法就是用来了解一个整体水平,而不需要我们一台台看过去。这个方法的数据全部来之数据库,所以它不需要agent。文章的最后面我们会有一个简单的图例讲述aggregate checks.
aggregate item key语法如下:
1
|
groupfunc["Host group","Item key",itemfunc,timeperiod]
|
多个组使用逗号分隔.
支持按组的function
GROUP FUNCTION 描述
grpavg | 平均值 |
grpmax | 最大值 |
grpmin | 最小值 |
grpsum | 总和 |
支持按tiem的function
ITEM FUNCTION | 描述 |
avg | 平均值 |
count | value个数 |
last | 最新值 |
max | 最大值 |
min | 最小值 |
sum | 总值 |
参数timeperiod为指定的采集时间,可以使用时间单位,例如可以使用1d代替86400(单位默认为秒),5m代替300.
备注:
- 如果第三个参数为last,那么timeperiod参数值将会被server忽略掉
- 只有被监控的HOST上启用的item才会被计入aggregate check
使用范例
示例1
组MySQL Servers剩余硬盘空间大小
1
|
grpsum["MySQL Servers","vfs.fs.size[/,total]",last,0]
|
示例2
组MySQL Servers的平均CPU负载
1
|
grpavg["MySQL Servers","system.cpu.load[,avg1]",last,0]
|
示例3
组MySQL Servers 5分钟内的平均查询速度(次/秒)
1
|
grpavg["MySQL Servers",mysql.qps,avg,5m]
|
示例4
多个组的cpu负载平均值
1
|
grpavg[["Servers A","Servers B","Servers C"],system.cpu.load,last,0]
|
示例(带图)
获取linux servers组内所有HOST平均运行天数
首先在zabbix server上配置item,名字就叫做:zabbix aggregate(平均运行天数),key为:grpavg["Linux servers","system.uptime",last,0]
具体请看图: