Você está visualizando a documentação da versão de desenvolvimento, que pode estar incompleta.
Esta página foi traduzida automaticamente. Se você notar um erro, selecione-o e pressione Ctrl+Enter para reportá-lo aos editores.

11 Descoberta usando consultas WMI

Visão geral

WMI é uma interface poderosa no Windows que pode ser usada para recuperar diversas informações sobre componentes do Windows, serviços, estado e softwares instalados.

Ela pode ser usada para descoberta de discos físicos e coleta de dados de desempenho, descoberta de interfaces de rede, descoberta de convidados Hyper-V, monitoramento de serviços do Windows e muitas outras coisas no sistema operacional Windows.

Esse tipo de descoberta de baixo nível é feito usando consultas WQL, cujos resultados são automaticamente transformados em um objeto JSON adequado para descoberta de baixo nível.

Chave do item

O item a ser usado na regra de descoberta é

wmi.getall[<namespace>,<query>]

Este item transforma o resultado da consulta em um array JSON. Por exemplo:

select * from Win32_DiskDrive where Name like '%PHYSICALDRIVE%'

pode retornar algo como:

[
           {
               "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 descoberta de baixo nível

Mesmo que nenhuma macro de descoberta de baixo nível seja criada no JSON retornado, essas macros podem ser definidas pelo usuário como uma etapa adicional, usando a funcionalidade de macro LLD personalizada com JSONPath apontando para os valores descobertos no JSON retornado.

As macros podem então ser usadas para criar protótipos de item, trigger, etc.