Hypervisor monitoring

NetXMS has subagents that allow to monitor hypervisors. This subagent is build using libvirt functionality. Due to the fact that libvirt is poorly supported on Windows platforms, vmgr subagent is not provided on Windows.

When installing NetXMS from packages, vmgr subagent is provided as a separate package named netxms-agent-vmgr. If building from source, ./configure should be ran with –with-vmgr.


Configuration is separated into two parts: vmgr section defines all monitored hosts, and each host configuration is defined in separate section for each host.

Each host configuration should contain connection URL. Login and password parameters are optional. URL creation rules for each vitalization solution type can be found in libvirt documentation.

Not all api functions are supported by all hypervisors in libvirt. See libvirt API support matrix for more information.

Configuration example

In this example two hosts are defined: localESX1 and test. localESX1 connection details are described in section vmgr:localESX1 and test connection details are described in section vmgr:test.

MasterServers = netxms.demo
SubAgent = vmgr.nsm

host = localESX1
host = test

Url = esx://root@
Login = root
Password = password

Url = test:///default



Metric Type Description
VMGR.Host.CPU.Arch(hostName) String Host CPU architecture
VMGR.Host.CPU.MaxCount(hostName) Unsigned integer Host maximum virtual CPU count
VMGR.Host.FreeMemory(hostName) Unsigned integer 64 Host free memory
VMGR.Host.MemorySize(hostName) Unsigned integer 64 Host memory size
VMGR.Host.CPU.Model(hostName) String Host CPU model name
VMGR.Host.CPU.Frequency(hostName) Unsigned integer Host CPU frequency
VMGR.Host.ConnectionType(hostName) String Connection type
VMGR.Host.LibraryVersion(hostName) Unsigned integer 64 Library version
VMGR.Host.ConnectionVersion(hostName) Unsigned integer 64 Connection version
VMGR.VM.Memory.Used(hostName,vmName) Unsigned integer 64 Memory currently used by VM
VMGR.VM.Memory.UsedPrec(hostName,vmName) Unsigned integer Percentage of currently memory usage by VM
VMGR.VM.Memory.Max(hostName,vmName) Unsigned integer 64 Maximum VM available memory
VMGR.VM.CPU.Time(hostName,vmName) Unsigned integer 64 Maximum VM CPU time


Metric Description
VMGR.VM(hostName) Connection VM table
VMGR.InterfaceList(hostName) Connection interface list
VMGR.VMDisks(hostName,vmName) VM Disks
VMGR.VMController(hostName,vmName) VM Controllers
VMGR.VMInterface(hostName,vmName) VM Interfaces
VMGR.VMVideo(hostName,vmName) VM Video adapter settings
VMGR.Networks(hostName) Networks table
VMGR.Storages(hostName) Storages table


Metric Description
VMGR.VMHost List of hosts
VMGR.VMList(hostName) List of VM for the host