Monitors the connection status of a Queue.
This monitor checks the connection to a queue by attempting to peek into it.
This test is performed by the local server, so there still may be network conditions causing other clients to be unable to connect to it. Network conditions are included in a Client Perspective monitor which may be enabled and configured separately to this monitor.
Peeking into an inactive queue will automatically activate that queue. In order to reduce overhead on the server, the test is not performed against inactive queues.
The behavior of this monitor may be modified with an override setting the following parameters.
IntervalSeconds | The number of seconds between executions of the test. If this value is set too low, it could result in excessive overhead against the MSMQ service. If it is set to high, an error condition may not be detected within a suitable time. Default setting is 120 seconds (execute the test every 2 minutes). |
The connection is made under the credentials defined in the Queue Access User Profile. This account must have access to the queues being tested. The account is configured in the Administration section of the Operations Console.
If a connection to a queue fails because of an Access Denied error, it is most likely due to the inability of the Queue Access User Profile to the perform a connection to the queue. Check the credentials of the Queue Access User Profile in the Administration section of the Operations Console.
Target | Microsoft.MSMQ.10.0.Queues | ||
Parent Monitor | System.Health.AvailabilityState | ||
Category | AvailabilityHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.MSMQ.10.0.MonitorType.QueueConnection | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.MSMQ.10.0.Monitor.Queue.ConnectionStatus" Accessibility="Public" Enabled="true" Target="Microsoft.MSMQ.10.0.Queues" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.MSMQ.10.0.MonitorType.QueueConnection" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.MSMQ.10.0.Monitor.Queue.ConnectionStatus.AlertMessageResourceID">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
</AlertSettings>
<OperationalStates>
<OperationalState ID="UnsuccessfulConnection" MonitorTypeStateID="UnsuccessfulConnection" HealthState="Error"/>
<OperationalState ID="SuccessfulConnection" MonitorTypeStateID="SuccessfulConnection" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>300</IntervalSeconds>
<ComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</ComputerName>
<QueuePath>$Target/Property[Type="Microsoft.MSMQ.10.0.Queue"]/PathName$</QueuePath>
<LogDetail>false</LogDetail>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>