Enable-VMResourceMetering

Collects resource utilization data for a virtual machine or resource pool.

Syntax

Enable-VMResourceMetering
      [-ResourcePoolName] <String>
      [[-ResourcePoolType] <VMResourcePoolType>]
      [-ComputerName <String[]>]
Enable-VMResourceMetering
      [-VMName] <String[]>
      [-ComputerName <String[]>]
Enable-VMResourceMetering
      [-VM] <VirtualMachine[]>

Description

The Enable-VMResourceMetering cmdlet starts collecting resource utilization data for a virtual machine or resource pool.

You can use the Measure-VM or Measure-VMResourcePool cmdlet to obtain this data.

If resource metering is enabled but no NetworkAdapterAcls are configured, Hyper-V configures them to measure total network traffic. To measure network traffic through an IP range, configure the NetworkAdapterAcls for the IP range before calling this cmdlet. (See Add-VMNetworkAdapterAcl for more information.)

Examples

Example 1

PS C:\>Enable-VMResourceMetering -VMName TestVM

This example starts collecting resource utilization data on a virtual machine named TestVM.

Example 2

PS C:\>Get-VM TestVM | Enable-VMResourceMetering
PS C:\>Get-VM TestVM | Format-List Name,ResourceMeteringEnabled

This example starts collecting resource utilization data on a resource pool named TestResourcePool. (You can determine whether resource metering is enabled for a resource pool by querying its ResourceMeteringEnabled property.)

Example 3

PS C:\>Enable-VMResourceMetering -ResourcePoolName TestResourcePool -ResourcePoolType Memory PS C:\>Get-VMResourcePool -Name TestResourcePool -ResourcePoolType Memory | Format-List Name,ResourceMeteringEnabled

This example uses two commands that show resource metering being enabled and then obtain the data. The first command starts collecting resource utilization data for a memory resource pool named TestResourcePool. (You can determine whether resource metering is enabled for a resource pool by querying its ResourceMeteringEnabled property.) The second command retrieves the data in and formats it as a list.

Example 4

PS C:\>Enable-VMResourceMetering -Name TestResourcePool -ResourcePoolType @("Processor","VHD","Ethernet","Memory")

This example begins collecting resource utilization data on multiple resource pools with the name TestResourcePool.

Parameters

-ComputerName

Specifies the virtual machine host or hosts on which resource utilization data collection is to be enabled. NetBIOS names, IP addresses, and fully-qualified domain names are allowable. The default is the local computer - use "localhost" or a dot (".") to specify the local computer explicitly.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ResourcePoolName

Specifies the friendly name of the resource pool for which you want to collect resource utilization data.

Type:String
Aliases:Name
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ResourcePoolType

Specifies the resource type of the resource pool for which you want to collect resource utilization data.

Type:VMResourcePoolType
Position:2
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-VM

Specifies the virtual machine for which you want to collect resource utilization data.

Type:VirtualMachine[]
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VMName

Specifies the friendly name of the virtual machine for which you want to collect resource utilization data.

Type:String[]
Position:1
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

Inputs

Microsoft.HyperV.PowerShell.VirtualMachine[]

Microsoft.HyperV.PowerShell.VMResourcePoolType

Outputs

None