NAME

Get-DcsMonitor

SYNOPSIS

Returns data for system monitors. Numerous system monitors gather and report status information for managed SAN resources.

SYNTAX

Get-DcsMonitor   [ -Object <Object> ]   [ -Connection <String> ]   [ -PipelineVariable <String> ]

Get-DcsMonitor   [ -Monitor <Object> ]   [ -Connection <String> ]   [ -PipelineVariable <String> ]

DESCRIPTION

Returns data for system monitors. Numerous system monitors gather and report status information for managed SAN resources. Filtering parameters may be specified to narrow the scope of the data returned. If no parameters are specified, all monitors for all resources for the default connection will be returned.

PARAMETERS

-Object<Object>
The ID or object that identifies the resource to monitor. If specified, all monitors for the resource will be returned. For example, to return all monitors for a specific pool, pipe in the DiskPoolData object for that pool (see Example 3) or provide the ID as the parameter value.

Required: false
Position: 1
Default value:
Accept pipeline input: true (ByValue)
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

-Monitor<Object>
MonitorData object, name, or ID that identifies a monitor. If specified, only data for the designated monitor will be returned.

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

INPUTS

MonitorData : Object that identifies and describes the monitor and the resource being monitored.

OUTPUTS

MonitorData : Object that identifies and describes the monitor and the resource being monitored. An object will be returned for each resource that is being monitored.

NOTES

Also see Get-DcsMonitorTemplate, Get-DcsTrigger.

EXAMPLES


-------------- Example 1 Returns monitors with selected states by piping objects --------------
Get-DcsMonitor | where {$_.State -ne "Healthy" -and $_.State -ne "Undefined"}
		

Returns all monitors in the server group with the exception of Healthy and Undefined, resulting in all monitors with a status of Critical, Warning, and Attention.

TemplateId:T(DataCore.Executive.Controller.ScsiPortConnectionStateMonitor<DataCore.Executive.Controller.ScsiPort>)
MonitoredObjectId:A6EA4E77-BBFF-4F48-91CD-3987E81C1CB3:MAC:00-15-5D-11-E9-0F
Description:Monitors the connection state of SCSI ports.
State:Attention
StateMessage:DataCore.Executive.LogMessage
Id:ScsiPortConnectionStateMonitor<A6EA4E77-BBFF-4F48-91CD-3987E81C1CB3:MAC:00-15-5D-11-E9-0F>
Caption:Connection State
ExtendedCaption:Connection State
Internal:False
   
TemplateId:T(DataCore.Executive.Controller.PoolMemberStateMonitor<DataCore.Executive.Controller.PoolMember>)
MonitoredObjectId:20394e04-6134-4ddf-8663-1176e851d27d
Description:Monitors the state of the relation between a pair of mirrored physical disks in a pool.
State:Attention
StateMessage:DataCore.Executive.LogMessage
Id:PoolMemberStateMonitor<20394e04-6134-4ddf-8663-1176e851d27d>
Caption:State
ExtendedCaption:State
Internal:False
   
TemplateId:T(DataCore.Executive.Controller.PoolMemberStateMonitor<DataCore.Executive.Controller.PoolMember>)
MonitoredObjectId:a32310da-9e33-43e6-85ec-6d45139d4965
Description:Monitors the state of the relation between a pair of mirrored physical disks in a pool.
State:Attention
StateMessage:DataCore.Executive.LogMessage
Id:PoolMemberStateMonitor<a32310da-9e33-43e6-85ec-6d45139d4965>
Caption:State
ExtendedCaption:State
Internal:False
   

-------------- Example 2 Returns a specific monitor for a specific virtual disk --------------
$VD1 = Get-DcsVirtualDisk -VirtualDisk "Virtual disk 1"
Get-DcsMonitor | where {$_.MonitoredObjectId -eq $VD1.Id}
Get-DcsMonitor | where {$_.MonitoredObjectId -eq $VD1.Id -and $_.TemplateID -match "VirtualDiskDataStatusMonitor"}
			

In this example, a series of cmdlet invocations is used to single out a specific monitor for a virtual disk. First, Get-DcsVirtualDisk is invoked with "Virtual disk 1" specified and the resulting VirtualDiskDataObject is stored in the variable $VD1. Next, the Get-DcsMonitor is invoked to return the MonitorData objects where the MonitoredObjectId is equal to the ID in the variable $VD1. In this case, two objects are returned (see the first two objects below). But the only MonitorData object desired is the VirtualDiskDataStatus Monitor, which monitors the status of "Virtual disk 1". So the Get-DcsMonitor cmdlet is invoked again to return the specific MonitorData object that is used to monitor the status of "Virtual disk 1". (See the third object below). The monitor name is included in the TemplateId of the MonitorData object. This method of retrieving a subset of MonitorData objects and then further filtering to pinpoint a specific object will save time due to the large number of monitors used in the system.

MonitorData objects can be used to create a task trigger for a monitor state change, see Add-DcsTrigger.


TemplateId:T(DataCore.Executive.Controller.VirtualDiskDataStatusMonitor<DataCore.Executive.Controller.VirtualDisk>)
MonitoredObjectId:40199f677a87440b8a845eb964f90fdb
Description:Monitors the data status of virtual disks.
State:Healthy
TimeStamp:9/12/2014 10:46:19 AM
MessageText:Up to date
Sequencenumber:5701
Id:VirtualDiskDataStatusMonitor<40199f677a87440b8a845eb964f90fdb>
Caption:Data Status
ExtendedCaption:Data Status of Virtual disk 1 from Server Group
Internal:False
   
TemplateId:T(DataCore.Executive.Controller.VirtualDiskAccessRightsMonitor<DataCore.Executive.Controller.VirtualDisk>)
MonitoredObjectId:40199f677a87440b8a845eb964f90fdb
Description:Monitors the access rights of virtual disks.
State:Healthy
TimeStamp:9/12/2014 10:34:30 AM
MessageText:Read/Write
Sequencenumber:5553
Id:VirtualDiskAccessRightsMonitor<40199f677a87440b8a845eb964f90fdb>
Caption:Host Access
ExtendedCaption:Host Access of Virtual disk 1 from Server Group
Internal:False
   
   
   
TemplateId:T(DataCore.Executive.Controller.VirtualDiskDataStatusMonitor<DataCore.Executive.Controller.VirtualDisk>)
MonitoredObjectId:40199f677a87440b8a845eb964f90fdb
Description:Monitors the data status of virtual disks.
State:Healthy
TimeStamp:9/12/2014 10:46:19 AM
MessageText:Up to date
Sequencenumber:5701
Id:VirtualDiskDataStatusMonitor<40199f677a87440b8a845eb964f90fdb>
Caption:Data Status
ExtendedCaption:Data Status of Virtual disk 1 from Server Group
Internal:False
   

-------------- Example 3 Returns all monitors for a specific object. --------------
Get-DcsPool -Server SSV1 -Pool "Disk pool 1" | Get-DcsMonitor
		

The cmdlet Get-DcsPool is invoked to return the DiskPoolData object for the pool "Disk pool 1" on server SSV1. That object is piped to the cmdlet Get-DcsMonitor and all monitors for that object are returned.

TemplateId:T(DataCore.Executive.Controller.DiskPoolStateMonitor<DataCore.Executive.Controller.DiskPool>)
MonitoredObjectId:1B3541A1-752C-485E-B729-CB47CE559886:{fefed4a4-39ab-11e4-9ab1-00155d651603}
Description:Monitors the state of disk pools.
State:Healthy
TimeStamp:9/12/2014 10:43:23 AM
MessageText:Running
Sequencenumber:5674
Id:DiskPoolStateMonitor<1B3541A1-752C-485E-B729-CB47CE559886:{fefed4a4-39ab-11e4-9ab1-00155d651603}>
Caption:State
ExtendedCaption:State of Disk pool 1 on SSV1
Internal:False
   
TemplateId:T(DataCore.Executive.Controller.FallingThresholdPerfMonitor`1[T]<1B3541A1-752C-485E-B729-CB47CE559886:{fefed4a4-39ab-11e4-9ab1-00155d651603
MonitoredObjectId:1B3541A1-752C-485E-B729-CB47CE559886:{fefed4a4-39ab-11e4-9ab1-00155d651603}
Description:Monitors the disk pools available space percentage.
State:Healthy
TimeStamp:9/11/2014 10:41:16 AM
MessageText:Available space > 30%
Sequencenumber:5038
Id:FallingThresholdPerfMonitor`1<1B3541A1-752C-485E-B729-CB47CE559886:{fefed4a4-39ab-11e4-9ab1-00155d651603}>PercentAvailable
Caption:Available space
ExtendedCaption:Available space of Disk pool 1 on SSV1
Internal:False
   
TemplateId:T(DataCore.Executive.Controller.RisingThresholdPerfMonitor`1[T]<1B3541A1-752C-485E-B729-CB47CE559886:{fefed4a4-39ab-11e4-9ab1-00155d651603}
MonitoredObjectId:1B3541A1-752C-485E-B729-CB47CE559886:{fefed4a4-39ab-11e4-9ab1-00155d651603}
Description:Monitors the disk pools latency.
State:Healthy
TimeStamp:9/11/2014 10:41:16 AM
MessageText:I/O latency < 5s
Sequencenumber:5039
Id:RisingThresholdPerfMonitor`1<1B3541A1-752C-485E-B729-CB47CE559886:{fefed4a4-39ab-11e4-9ab1-00155d651603}>MaxReadWriteTime
Caption:I/O latency
ExtendedCaption:I/O latency of Disk pool 1 on SSV1
Internal:False
   
 
-------------- Example 4 Get Virtual Disk Configuration Status Monitor for all Virtual Disks --------------
C:\PS>Get-DcsVirtualDisk | Get-DcsMonitor | where {$_.TemplateID -match "VirtualDiskConfigurationStatusMonitor"}		

Returns the VirtualDiskConfigurationStatusMonitor monitors of all virtual disks in the server group.

ConfigurationRating:20
StatusRating:20
StatusMessage: 
TemplateId:T(DataCore.Executive.Controller.VirtualDiskConfigurationStatusMonitor<DataCore.Executive.Controll er.VirtualDisk>)
MonitoredObjectId:fdf10967c6ae4a269ece7aa4b9a8dffc
Description:Monitors the configuration state of virtual disks.
State:Healthy
TimeStamp:9/19/2024 3:04:58 PM
MessageText: 
Sequencenumber:11417157
Id:VirtualDiskConfigurationStatusMonitor<fdf10967c6ae4a269ece7aa4b9a8dffc>
Caption:Configuration State
ExtendedCaption:Configuration State of Virtual Disk Virtual disk 1 from Server Group
Internal:False
   
ConfigurationRating:50
StatusRating:50
StatusMessage: 
TemplateId:T(DataCore.Executive.Controller.VirtualDiskConfigurationStatusMonitor<DataCore.Executive.Controller.VirtualDisk>)
MonitoredObjectId:bded2034fc0843e4b03f75e13d0c38aa
Description:Monitors the configuration state of virtual diskse.
State:Healthy
TimeStamp:9/19/2024 5:14:10 AM
MessageText: 
Sequencenumber:11417167
Id:VirtualDiskConfigurationStatusMonitor<bded2034fc0843e4b03f75e13d0c38aa>
Caption:Configuration State
ExtendedCaption:Configuration State of Virtual Disk Virtual disk 2 from Server Group
Internal:False