Sidebar

ru:manual:discovery:low_level_discovery:wmi

10 Обнаружение с использованием WMI запросов

Обзор

WMI - мощный интерфейс в Windows, который можно использовать для получения различной информации о Windows компонентах, службах, состоянии и установленном программном обеспечении.

Его можно использовать для обнаружения физических дисков и сбора их данных производительности, обнаружения сетевых интерфейсов, обнаружения Hyper-V гостей, мониторинга служб Windows и множества других задач в Windows ОС.

Этот тип низкоуровневого обнаружения выполняется с использованием WQL запросов, результаты которых автоматически трансформируются в JSON объект, подходящий для низкоуровневого обнаружения.

Ключ элемента данных

Ключом элемента данных, который используется в правиле обнаружения является

wmi.getall[<пространство_имён>,<запрос>]

Этот элемент данных трансформирует результат запроса в JSON массив. Например:

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

может вернут что-то наподобии этого:

[
	{
		"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"
	}
]

Этот элемент данных поддерживается начиная с Zabbix Windows агента 4.4.

Макросы низкоуровневого обнаружения

Несмотря на то, что макросы низкоуровневого обнаружения не создаются в возвращаемом JSON, эти макросы может задать пользователь дополнительным шагом с использованием функциональности пользовательских LLD макросов с JSONPath, которые будут указывать на обнаруженные значения в полученном JSON.

Эти макросы можно затем использовать для создания прототипов элементов данных, триггеров и графиков и т.п.