It is possible to discover mounted filesystems and their properties (mountpoint name, mountpoint type, filesystem size and inode statistics).
To do that, you may use a combination of:
vfs.fs.get
agent item (supported since Zabbix 4.0.17) as the master itemCreate a Zabbix agent item using the following key:
Set the type of information to "Text" for possibly big JSON data.
The data returned by this item will contain something like the following for a mounted filesystem:
{
"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
}
}
Create a low-level discovery rule using the in-built discovery key:
This discovery rule will return discovery macros such as {#FSNAME}, {#FSTYPE} that can be used in creating item prototypes.
Create an item prototype with "Dependent item" type in this LLD rule. As master item for this prototype select the vfs.fs.get
item we created.
Note the use of macros in the item prototype name and key:
As type of information, use:
In the item prototype "Preprocessing" tab select JSONPath and use the following JSONPath expression as parameter:
When discovery starts, one item per each mountpoint will be created. This item will return the number of free bytes for the given mountpoint.