Descubrimiento mediante consultas WMI
Descripción general
WMI es una interfaz potente en Windows que puede utilizarse para recuperar diversa información sobre componentes de Windows, servicios, estado y software instalado.
Puede utilizarse para el descubrimiento de discos físicos y la recopilación de sus datos de rendimiento, descubrimiento de interfaces de red, descubrimiento de invitados Hyper-V, monitorización de servicios de Windows y muchas otras cosas en el sistema operativo Windows.
Este tipo de descubrimiento de bajo nivel se realiza utilizando consultas WQL cuyos resultados se transforman automáticamente en un objeto JSON adecuado para el descubrimiento de bajo nivel.
Clave del item
Para configurar la regla de descubrimiento, use la clave de item del agent de Zabbix wmi.getall[<namespace>,<query>].
Esta clave de item transforma el resultado de la consulta en un array JSON. Por ejemplo:
select * from Win32_DiskDrive where Name like '%PHYSICALDRIVE%'
puede devolver algo como esto:
[
{
"DeviceID" : "\\.\PHYSICALDRIVE0",
"BytesPerSector" : 512,
"Capabilities" : [
3,
4
],
"CapabilityDescriptions" : [
"Random Access",
"Supports Writing"
],
"Caption" : "VBOX HARDDISK ATA Device",
"ConfigManagerErrorCode" : 0,
"ConfigManagerUserConfig" : "False",
"CreationClassName" : "Win32_DiskDrive",
"Description" : "Disk drive",
"FirmwareRevision" : "1.0",
"Index" : 0,
"InterfaceType" : "IDE"
},
{
"DeviceID" : "\\.\PHYSICALDRIVE1",
"BytesPerSector" : 512,
"Capabilities" : [
3,
4
],
"CapabilityDescriptions" : [
"Random Access",
"Supports Writing"
],
"Caption" : "VBOX HARDDISK ATA Device",
"ConfigManagerErrorCode" : 0,
"ConfigManagerUserConfig" : "False",
"CreationClassName" : "Win32_DiskDrive",
"Description" : "Disk drive",
"FirmwareRevision" : "1.0",
"Index" : 1,
"InterfaceType" : "IDE"
}
]
Macros de descubrimiento de bajo nivel
Aunque no se crean macros de descubrimiento de bajo nivel en el JSON devuelto, estas macros pueden ser definidas por el usuario como un paso adicional, utilizando la funcionalidad de macro LLD personalizada con JSONPath apuntando a los valores descubiertos en el JSON devuelto.
Luego, las macros se pueden usar para crear prototipos de item, trigger, etc.