NAME

Set-DcsVirtualDiskThreshold

SYNOPSIS

Sets System Health thresholds for virtual disks. Thresholds can be set for Allocated Space, I/O Latency, Storage Latency, and History Log Size and Retention Period for data protected (CDP-enabled) virtual disks.

SYNTAX

Set-DcsVirtualDiskThreshold   -VirtualDisk <Object>   [ -AllocatedSpaceAttention <UInt64> ]   [ -AllocatedSpaceWarning <UInt64> ]   [ -AllocatedSpaceCritical <UInt64> ]   [ -Connection <String> ]   [ -PipelineVariable <String> ] [<CommonParameters>]

Set-DcsVirtualDiskThreshold   -VirtualDisk <Object>   [ -LatencyAttention <UInt64> ]   [ -LatencyWarning <UInt64> ]   [ -LatencyCritical <UInt64> ]   [ -Connection <String> ]   [ -PipelineVariable <String> ] [<CommonParameters>]

Set-DcsVirtualDiskThreshold   -VirtualDisk <Object>   [ -StorageLatencyAttention <UInt64> ]   [ -StorageLatencyWarning <UInt64> ]   [ -StorageLatencyCritical <UInt64> ]   [ -Connection <String> ]   [ -PipelineVariable <String> ] [<CommonParameters>]

Set-DcsVirtualDiskThreshold   -VirtualDisk <Object>   [ -RetentionPeriodWarning <UInt64> ]   [ -Connection <String> ]   [ -PipelineVariable <String> ] [<CommonParameters>]

Set-DcsVirtualDiskThreshold   -VirtualDisk <Object>   [ -HistoryLogSizeAttention <UInt64> ]   [ -HistoryLogSizeWarning <UInt64> ]   [ -HistoryLogSizeCritical <UInt64> ]   [ -Connection <String> ]   [ -PipelineVariable <String> ] [<CommonParameters>]

DESCRIPTION

Sets System Health thresholds for virtual disks. Thresholds can be set for Allocated Space, I/O Latency, Storage Latency, and History Log Size and Retention Period for data protected (CDP-enabled) virtual disks. The I/O Latency Threshold is for the front-end paths to the virtual disk. Storage Latency Threshold monitors the back-end paths. Thresholds can be set for attention, warning, and critical levels which will generate the appropriate level messages in System Health.

PARAMETERS

-VirtualDisk<Object>
VirtualDiskData object, name, or ID that identifies the virtual disk.

Required: true
Position: named
Default value:
Accept pipeline input: true (ByValue)
Accept wildcard characters: false

-AllocatedSpaceAttention<UInt64>
This parameter has been deprecated and will always be empty. This parameter is left in the interface for backwards compatibility. It cannot be changed.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-AllocatedSpaceWarning<UInt64>
This parameter has been deprecated and will always be empty. This parameter is left in the interface for backwards compatibility. It cannot be changed.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-AllocatedSpaceCritical<UInt64>
This parameter has been deprecated and will always be empty. This parameter is left in the interface for backwards compatibility. It cannot be changed.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-Connection<String>
Alias of the connection to the server group. If not specified, the default connection is used.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-PipelineVariable<String>

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-LatencyAttention<UInt64>
This parameter sets the attention level of the I/O Latency Threshold. The value is the the amount of milliseconds (ms). Valid values are "0" through "60000". The default value is "30". In this case, when the latency for a front-end path to the virtual disk reaches 30 ms, an attention message will be generated.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-LatencyWarning<UInt64>
This parameter sets the warning level of the I/O Latency Threshold. The value is the the amount of milliseconds (ms). Valid values are "0" to "60000". The default value is "60". In this case, when the latency for a front-end path to the virtual disk reaches 60 ms, a warning message will be generated.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-LatencyCritical<UInt64>
This parameter sets the critical level of the I/O Latency Threshold. The value is the the amount of milliseconds (ms). Valid values are "0" to "60000". The default value is "120". In this case, when the latency for a front-end path to the virtual disk reaches 120 ms, a critical message will be generated.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-StorageLatencyAttention<UInt64>
This parameter sets the attention level of the Storage Latency Threshold. The value is the the amount of milliseconds (ms). Valid values are "0" through "60000". The default value is "120". In this case, when the latency for a back-end path to the disk reaches 120 ms, an attention message will be generated.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-StorageLatencyWarning<UInt64>
This parameter sets the warning level of the Storage Latency Threshold. The value is the the amount of milliseconds (ms). Valid values are "0" to "60000". The default value is "240". In this case, when the latency for a back-end path to the virtual disk reaches 240 ms, a warning message will be generated.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-StorageLatencyCritical<UInt64>
This parameter sets the critical level of the I/O Latency Threshold. The value is the the amount of milliseconds (ms). Valid values are "0" to "60000". The default value is "480". In this case, when the latency for a back-end path to the virtual disk reaches 480 ms, a critical message will be generated.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-RetentionPeriodWarning<UInt64>
This parameter allows a threshold to be set that will issue a System Health warning if the number of hours left in the history log drops below the threshold that is set. Enter the value in number of hours. (The value will be reflected in milliseconds in the returned object in both AttentionLevel and Warning Level fields. Note: Only a warning will be issued.) Valid values are 0-1000. The default setting is 0, which means that the threshold is disabled and will not produce a warning.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-HistoryLogSizeAttention<UInt64>
This parameter sets the attention level of the history log size threshold for a data protected virtual disk. The value is the percentage of the maximum history log size set for the virtual disk. Valid values are 100 - 10000. The default value is 100 percent. In this case, when the current history log size reaches 100% of the maximum history log size setting an attention message will be generated.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-HistoryLogSizeWarning<UInt64>
This parameter sets the warning level of the history log size threshold for a data protected virtual disk. The value is the percentage of the maximum history log size set for the virtual disk. Valid values are 100 - 10000. The default value is 100 percent. In this case, when the current history log size reaches 100% of the maximum history log size setting a warning message will be generated.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-HistoryLogSizeCritical<UInt64>
This parameter sets the critical level of the history log size threshold for a data protected virtual disk. The value is the percentage of the maximum history log size set for the virtual disk. Valid values are 100 - 10000. The default value is 0 percent, which will not be reached and therefore not produce a critical alert. For instance, if the setting is 300, when the current history log size reaches 300% of the maximum history log size setting a critical message will be generated.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false
 
<Common Parameters>
This This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

INPUTS

VirtualDiskData : Object that identifies the virtual disk.

OUTPUTS

ThresholdMonitorTemplateData : A type of MonitorTemplateData object which identifies and describes the threshold monitor.

NOTES

Note: The behavior of history log size thresholds are different in the console. In the console, there is one setting and it sets a threshold for a System Health warning. To obtain the same behavior in the cmdlets, set the Attention and Warning levels to the same value and ensure the Critical level is set to 0. Also see Get-DcsVirtualDisk, Set-DcsVirtualDiskProperties.

EXAMPLES


-------------- Example 1 Sets the Allocated Space Thresholds for a specific virtual disk --------------
Set-DcsVirtualDiskThreshold -VirtualDisk "Virtual disk 1" -AllocatedSpaceAttention 95 -AllocatedSpaceWarning 100 -AllocatedSpaceCritical 101
		

The cmdlet is invoked to set all allocated space thresholds for the virtual disk "Virtual disk 1". The attention threshold is set for 95 percent allocated space, the warning threshold is set for 100 percent allocated space, and the critical threshold is set for 101 percent allocated space (which will silence the message such that no critical level message will be generated).

AttentionLevel:95
WarningLevel:100
CriticalLevel:101
CounterName:PercentAllocated
Alias:Allocated space
Description:Monitors the virtual disks allocated space percentage.
MonitorType:DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]
MonitoredObjectType:DataCore.Executive.Controller.VirtualDisk
MonitoredObjectId:1ac0cb1cc3174dacaf9750c80145a70b
TypeId:T(DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]<DataCore.Executive.Controller.VirtualDisk>PercentAllocated)
Sequencenumber:6184
Id:T(DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]<1ac0cb1cc3174dacaf9750c80145a70b>PercentAllocated)
Caption:Allocated space
ExtendedCaption:Allocated space of 1ac0cb1cc3174dacaf9750c80145a70b
Internal:False
   

-------------- Example 2 Sets I/O Latency Thresholds for all virtual disks with a specific storage profile --------------
$CriticalVDs = Get-DcsVirtualDisk | where{$_.StorageProfileId -eq 'E84B65FF-B69A-4EF1-B79E-71D3DC29E867'}
$CriticalVDs | Set-DcsVirtualDiskThreshold -LatencyWarning 15000 -LatencyCritical 20000
		

The cmdlet Get-DcsVirtualDisk is invoked to obtain all VirtualDiskData objects in which the StorageProfileId field is equal to "E84B65FF-B69A-4EF1-B79E-71D3DC29E867" which is the ID for the critical storage profile. (Information about storage profiles can be obtained from the cmdlet Get-DcsStorageProfile.) The data is stored in the variable $CriticalVDs. That variable is used to pipe the VirtualDiskData objects to the cmdlet Set-DcsVirtualDiskThreshold and the warning threshold is set to 15,000 ms and the critical threshold is set to 20,000 ms. Thresholds are met when any front-end path to the virtual disks reach the thresholds that are set.

AttentionLevel:5000
WarningLevel:15000
CriticalLevel:20000
CounterName:MaxReadWriteTime
Alias:I/O latency
Description:Monitors the virtual disks latency.
MonitorType:DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]
MonitoredObjectType:DataCore.Executive.Controller.VirtualDisk
MonitoredObjectId:1ac0cb1cc3174dacaf9750c80145a70b
TypeId:T(DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]<DataCore.Executive.Controller.VirtualDisk>MaxReadWriteTime)
Sequencenumber:6348
Id:T(DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]<1ac0cb1cc3174dacaf9750c80145a70b>MaxReadWriteTime)
Caption:I/O latency
ExtendedCaption:I/O latency of 1ac0cb1cc3174dacaf9750c80145a70b
Internal:False
   
AttentionLevel:5000
WarningLevel:15000
CriticalLevel:20000
CounterName:MaxReadWriteTime
Alias:I/O latency
Description:Monitors the virtual disks latency.
MonitorType:DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]
MonitoredObjectType:DataCore.Executive.Controller.VirtualDisk
MonitoredObjectId:16758e0944e34e8fbcf2f8cc548fbcf2
TypeId:T(DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]<DataCore.Executive.Controller.VirtualDisk>MaxReadWriteTime)
Sequencenumber:6350
Id:T(DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]<16758e0944e34e8fbcf2f8cc548fbcf2>MaxReadWriteTime)
Caption:I/O latency
ExtendedCaption:I/O latency of 16758e0944e34e8fbcf2f8cc548fbcf2
Internal:False
   

-------------- Example 3 Sets all thresholds for the history log size for a data protected virtual disk --------------
Set-DcsVirtualDiskThreshold -VirtualDisk "Virtual disk 7" -HistoryLogSizeAttention 100 -HistoryLogSizeWarning 120 -HistoryLogSizeCritical 150
		

The cmdlet is invoked to set the attention level threshold to 100 percent, the warning level threshold to 120 percent and the critical level threshold to 150 percent. These thresholds are set for the virtual disk named "Virtual disk 7". When any of these thresholds are met for Virtual disk 7, the appropriate level System Health message will be generated.

AttentionLevel:100
WarningLevel:120
CriticalLevel:150
CounterName:StreamAllocationPercent
Alias:History log size
Description:Monitors the percentage of the maximum history log currently allocated.
MonitorType:DataCore.Executive.Controller.HistoryAllocationMonitor
MonitoredObjectType:DataCore.Executive.Controller.StreamLogicalDisk
MonitoredObjectId:b2363949-0e14-4546-9c9f-0f0c4c9b5663
TypeId:T(DataCore.Executive.Controller.HistoryAllocationMonitor<DataCore.Executive.Controller.StreamLogicalDisk>StreamAllocationPercent)
Sequencenumber:21000
Id:T(DataCore.Executive.Controller.HistoryAllocationMonitor<b2363949-0e14-4546-9c9f-0f0c4c9b5663>StreamAllocationPercent)
Caption:History log size
ExtendedCaption:History log size of b2363949-0e14-4546-9c9f-0f0c4c9b5663
Internal:False
   

-------------- Example 4 Sets Storage Latency Thresholds for all virtual disks with replications --------------
$VDs = Get-DcsVirtualDisk -OnlyWithReplications
$VDs | ForEach { Set-DcsVirtualDiskThreshold -VirtualDisk $_.Id -StorageLatencyWarning 15000 -StorageLatencyCritical 20000
		

The cmdlet Get-DcsVirtualDisk is invoked to get all virtual disks in the server group that are being replicated. The VirtualDiskData objects are stored in the variable $VDs. That variable is then used to pipe the IDs for each virtual disk to the cmdlet Set-DcsVirtualDiskThreshold and the warning threshold is set to 15,000 ms and the critical threshold is set to 20,000 ms. Thresholds are met when any back-end path to the virtual disks reach the thresholds that are set.

AttentionLevel:5000
WarningLevel:15000
CriticalLevel:20000
CounterName:CacheBackendMaxIOTime
Alias:Storage latency
Description:Monitors the maximum latency at the backend of the cache for the virtual disk source.
MonitorType:DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]
MonitoredObjectType:DataCore.Executive.Controller.LogicalDisk
MonitoredObjectId:b0def27c-b8c5-49dc-b0f2-63ce0146057d
TypeId:T(DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]<DataCore.Executive.Controller.Log
Sequencenumber:4884
Id:T(DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]<b0def27c-b8c5-49dc-b0f2-63ce0146057d>CacheBackendMaxIOTime)
Caption:Storage latency
ExtendedCaption:Storage latency of b0def27c-b8c5-49dc-b0f2-63ce0146057d
Internal:False
   
AttentionLevel:5000
WarningLevel:15000
CriticalLevel:20000
CounterName:CacheBackendMaxIOTime
Alias:Storage latency
Description:Monitors the maximum latency at the backend of the cache for the virtual disk source.
MonitorType:DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]
MonitoredObjectType:DataCore.Executive.Controller.LogicalDisk
MonitoredObjectId:af2bf99f-f29f-4240-9b67-a637e3cc06e1
TypeId:T(DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]<DataCore.Executive.Controller.Log
Sequencenumber:4886
Id:T(DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]<af2bf99f-f29f-4240-9b67-a637e3cc06e1>CacheBackendMaxIOTime)
Caption:Storage latency
ExtendedCaption:Storage latency of af2bf99f-f29f-4240-9b67-a637e3cc06e1
Internal:False
   
AttentionLevel:5000
WarningLevel:15000
CriticalLevel:20000
CounterName:CacheBackendMaxIOTime
Alias:Storage latency
Description:Monitors the maximum latency at the backend of the cache for the virtual disk source.
MonitorType:DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]
MonitoredObjectType:DataCore.Executive.Controller.LogicalDisk
MonitoredObjectId:db265f8b-64a8-43b2-956d-9c413a7070b4
TypeId:T(DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]<DataCore.Executive.Controller.Log
Sequencenumber:4888
Id:T(DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]<db265f8b-64a8-43b2-956d-9c413a7070b4>CacheBackendMaxIOTime)
Caption:Storage latency
ExtendedCaption:Storage latency of db265f8b-64a8-43b2-956d-9c413a7070b4
Internal:False
   
AttentionLevel:5000
WarningLevel:15000
CriticalLevel:20000
CounterName:CacheBackendMaxIOTime
Alias:Storage latency
Description:Monitors the maximum latency at the backend of the cache for the virtual disk source.
MonitorType:DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]
MonitoredObjectType:DataCore.Executive.Controller.LogicalDisk
MonitoredObjectId:7809cc14-09e9-4d85-8c4b-7676ee726ace
TypeId:T(DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]<DataCore.Executive.Controller.Log
Sequencenumber:4890
Id:T(DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]<7809cc14-09e9-4d85-8c4b-7676ee726ace>CacheBackendMaxIOTime)
Caption:Storage latency
ExtendedCaption:Storage latency of 7809cc14-09e9-4d85-8c4b-7676ee726ace
Internal:False