Alert Subscription Availability Monitor

Microsoft.SystemCenter.HealthServiceModules.AlertSubscriptionDSModule.AvailabilityMonitor (UnitMonitor)

Alert Subscription Data Source Module availability monitor.

Knowledge Base article:

Summary

One or more alert notification subscriptions encountered an error while attempting to run. Some or all notifications may not be correctly delivered.

Causes

The Alert criteria selected for the Subscription may be returning an error when used to filter Alerts in the Operations database. The Operations database has errors and hence maybe causing the wrong information to be sent to Reporting server. It is possible that the state of Notification subsystem is corrupted and it cannot read or write the state of this notification. Notification subsystem was unable to generate a notification message due to errors in the Notification runtime.

Resolutions

Notification subsystem is unable to generate notification messages due to availability problems. This may be due to one of many reasons.

Element properties:

TargetMicrosoft.SystemCenter.AlertNotificationSubscriptionServer
Parent MonitorMicrosoft.SystemCenter.HealthServiceModules.AlertSubscriptionDSModule.Rollup
CategoryConfigurationHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityHigh
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.SingleEventLogManualReset2StateMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Alert subscription data source module encountered errors while running.
{0}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.HealthServiceModules.AlertSubscriptionDSModule.AvailabilityMonitor" Accessibility="Public" Enabled="true" Target="Microsoft.SystemCenter.AlertNotificationSubscriptionServer" ParentMonitorID="Microsoft.SystemCenter.HealthServiceModules.AlertSubscriptionDSModule.Rollup" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.SingleEventLogManualReset2StateMonitorType" ConfirmDelivery="true">
<Category>ConfigurationHealth</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.HealthServiceModules.AlertSubscriptionDSModule.AvailabilityMonitorMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>High</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/EventDescription$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="AlertSubscriptionDataSourceAvailabilitySuccess" MonitorTypeStateID="ManualResetEventRaised" HealthState="Success"/>
<OperationalState ID="AlertSubscriptionDataSourceAvailabilityError" MonitorTypeStateID="EventRaised" HealthState="Error"/>
</OperationalStates>
<Configuration>
<ComputerName/>
<LogName>Operations Manager</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Health Service Modules</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<Value Type="String">$Target/ManagementGroup/Name$</Value>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<XPathQuery Type="String">Params/Param[1]</XPathQuery>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">11402</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">11403</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">11405</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">11406</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
</And>
</Expression>
</Configuration>
</UnitMonitor>