1 发现已挂载的文件系统
概述
可以发现已挂载的文件系统及其属性(挂载点名称、挂载点类型、文件系统大小和索引节点统计信息).
要做到这一点,你可以结合使用:
在master上使用agent的
vfs.fs.get
监控项依赖低级别发现规则和监控项原型
配置
服务端的监控项
创建一个Zabbix Agent的监控项可以使用以下key:
vfs.fs.get
可能较大的JSON数据,设置信息类型为”Text”.
已挂载的文件系统,此项返回的数据将包含如下内容:
{
"fsname": "/",
"fstype": "rootfs",
"bytes": {
"total": 1000,
"free": 500,
"used": 500,
"pfree": 50.00,
"pused": 50.00
},
"inodes": {
"total": 1000,
"free": 500,
"used": 500,
"pfree": 50.00,
"pused": 50.00
}
}
依赖LLD规则
创建一个低级别发现规则作为“依赖项”类型:
主要项选择vfs.fs.get
作为创建的监控项
在”LLD宏”选项中,用相应的JSONPath定义自定义宏:
依赖监控项原型
在自动发现规则中创建监控项原型,类型选择”依赖项”.主要项选择我们创建的vfs.fs.get
.
注意 在监控项原型名称和键值中使用了自定义宏:
名称: Free disk space on {#FSNAME}, type: {#FSTYPE}
键值: Free[{#FSNAME}]
信息类型的使用:
数字 (正负数) 可用于这类指标 ‘free’, ‘total’, ‘used’
浮点数 可用于这类指标 ‘pfree’, ‘pused’ (percentage)
在监控项原型“预处理”选项卡中选择JSONPath并使用以下JSONPath表达式作为参数:
$.[?(@.fsname=='{#FSNAME}')].bytes.free.first()
当自动发现启动,将为每个挂载点创建一个项目。该项将返回给定挂载点的空闲字节数.