1 Scoperta dei filesystem montati
Panoramica
È possibile individuare i filesystem montati e le loro proprietà:
- nome del punto di mount
- tipo di filesystem
- dimensione del filesystem
- statistiche degli inode
- opzioni di mount
Per farlo, è possibile utilizzare una combinazione di:
- l'item agent
vfs.fs.getcome item principale - regola di low-level discovery dipendente e prototipi di item
Configurazione
Item master
Creare un item di Zabbix agent usando la seguente chiave:
vfs.fs.get

Impostare il tipo di informazione su "Text" per eventuali dati JSON di grandi dimensioni.
I dati restituiti da questo item conterranno qualcosa di simile al seguente per un filesystem montato:
[
{
"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"
}
]
Regola LLD dipendente
Crea una regola di discovery a basso livello come tipo Dependent item:

Come master item seleziona l'item vfs.fs.get che abbiamo creato.
Nella scheda LLD macros definisci macro personalizzate con il corrispondente JSONPath:

Nella scheda Filters puoi aggiungere un'espressione regolare che filtra solo i filesystem read-write:

Prototipo di item dipendente
Crea un prototipo di item con tipo "Dependent item" in questa regola LLD.
Come item master per questo prototipo seleziona l'item vfs.fs.get che abbiamo creato.

Nota l'uso di macro personalizzate nel nome e nella chiave del prototipo di item:
- Name: Free disk space on {#FSNAME}, type: {#FSTYPE}
- Key: Free[{#FSNAME}]
Come tipo di informazione, usa:
- Numeric (unsigned) per metriche come 'free', 'total', 'used'
- Numeric (float) per metriche come 'pfree', 'pused' (percentage)
Nella scheda Preprocessing del prototipo di item seleziona JSONPath e usa la seguente espressione JSONPath come parametro:
$.[?(@.fsname=='{#FSNAME}')].bytes.free.first()

Quando inizia la discovery, verrà creato un item per ogni mountpoint. Questo item restituirà il numero di byte liberi per il mountpoint specificato.