Существует возможность обнаружения примонтированных файловых систем и их свойств:
Чтобы это сделать, можно использовать комбинацию из:
vfs.fs.get
в качестве основного элемента данныхСоздайте элемент данных агента Zabbix, используя следующий ключ:
Задайте тип информации как «Текст (Text)», чтобы иметь возможность обрабатывать большие данные в формате JSON.
Данные, возвращаемые этим элементом данных, будут содержать для примонтированных файловых систем что-то наподобие следующего:
[
{
"fsname": "/",
"fstype": "ext4",
"bytes": {
"total": 249405239296,
"free": 24069537792,
"used": 212595294208,
"pfree": 10.170306,
"pused": 89.829694
},
"inodes": {
"total": 15532032,
"free": 12656665,
"used": 2875367,
"pfree": 81.487503,
"pused": 18.512497
},
"options": "rw,noatime,errors=remount-ro"
}
]
Создайте правило низкоуровневого обнаружения с типом «Зависимый элемент данных (Dependent item)»:
В качестве основного элемента данных выберите элемент данных vfs.fs.get
, созданный ранее.
На вкладке «LLD Макросы (LLD macros)» определите настраиваемые макросы с соответствующими путями JSONPath:
На вкладке «Фильтры (Filters)» можно добавить регулярное выражение, которое отфильтрует лишь файловые системы, доступные на чтение/запись (read-write):
Создайте в этом правиле LLD прототип элемента данных с типом «Зависимый элемент данных (Dependent item)». В качестве основного элемента данных для этого прототипа выберите созданный ранее элемент данных vfs.fs.get
.
Обратите внимание на использование настраиваемых макросов в имени и ключе прототипа элемента данных:
В качестве типа информации используйте:
На вкладке «Предобработка (Preprocessing)» прототипа элемента данных выберите JSONPath и используйте следующее выражение JSONPath как параметр:
При запуске обнаружения будет создано по одному элементу данных на каждую точку монтирования. Этот элемент данных вернёт для данной точки монтирования количество свободных байтов.