磁盘自动发现
#!/bin/bash
diskarray=(`cat /proc/diskstats |grep -E "\bsd[abcdefg]\b|\bxvd[abcdefg]\b"|grep -i "\b$1\b"|awk '{print $3}'|sort|uniq 2>/dev/null`)
length=${#diskarray[@]}
printf "{\n"
printf '\t'"\"data\":["
for ((i=0;i<$length;i++))
do
printf '\n\t\t{'
printf "\"{#DISK_NAME}\":\"${diskarray[$i]}\"}"
if [ $i -lt $[$length-1] ];then
printf ','
fi
done
printf "\n\t]\n"
printf "}\n"
对返回的磁盘名进行监控项的创建/磁盘写入统计信息
vfs.dev.read/write[
磁盘读取统计信息。
整数 - 类型 为 sectors,operations, bytes
Float - 类型 为 sps, ops, bps
device - 磁盘设备 (默认为 all)
type - 可能的值: sectors, operations, bytes, sps, ops, bps必须指定此参数,因为各种操作系统的默认值不同。
sps, ops, bps 表示: sectors, operations, bytes per second, respectively.
mode - 可能的值: avg1 (1分钟平均值, 默认), avg5, avg15.
如果要获取每秒改变值,可以在进程中添加每秒改变,倍数自定义。
此参数仅支持的类型为: sps, ops, bps.
不同操作系统的“类型”参数的默认值:
AIX - operations
FreeBSD - bps
Linux - sps
OpenBSD - operations
Solaris - bytes
示例:
⇒ vfs.dev.read[,operations]
在支持的平台上的sps, ops 和 bps 曾被限制为 8 个设备(7个独立的和1个 all). 从Zabbix
2.0.1 开始,这个限制提高到1024个设备(1023个独立的和1个all).
如果默认为全部用于第一个参数,那么该key将返回摘要统计信息,包括所有块设备,
如sda,sbd及其分区(sda1,sda2,sdb3 …)和基于这些块设备/分区的多个设备(MD raid)和基于
这些设备/分区的逻辑卷(LVM)。在这种情况下,返回值只能作为相对值(动态时间)而不是绝
对值。
LVM的支持从Zabbix 1.8.6开始。
直到Zabbix 1.8.6才能使用相关的设备名称(例如,sda)。 从那时起,可选的 /dev/前缀(例
如/dev/sda)必须被使用。
旧名称: io[*]