In an MP, it is a frequent occurrence to have unit monitor that raise alerts as they change state. As a best practice, the alert should be raised on the same state that the monitor reflects as being unhealthy.
When alerts do not occur on the unhealthy state that is designated by the monitor, the alert will not show in the Operations Console. By design, on a two state monitor, if the unhealthy state is a Warning state, the alert should be raised on a Warning state; if the unhealthy monitor state is a Critical state, the alert should be written to be raised on a Critical state.
Using the Authoring Console:
1. For all monitors, open the Properties dialog. In the Alerting tab, check that “Generate the Alert When:” matches the monitor’s unhealthy state.
Using XML:
<
UnitMonitor
ID
=
"
Microsoft.Windows.Server.2008.LogicalDisk.AvailabilityHealth"
Accessibility
="
Public"
Enabled
="
onEssentialMonitoring"
Target
="
Server2008!Microsoft.Windows.Server.2008.LogicalDisk"
ParentMonitorID
="
SystemHealth!System.Health.AvailabilityState"
Remotable
="
true"
Priority
="
Normal"
TypeID
="
Microsoft.Windows.Server.2008.LogicalDisk.Monitortype"
ConfirmDelivery
="
false"
>
<
Category
>
StateCollection
</
Category
>
<
AlertSettings
AlertMessage
=
"
Microsoft.Windows.Server.2008.LogicalDisk.AvailabilityHealth.AlertMessage"
>
<
AlertOnState
>
Error
</
AlertOnState
>
<
AutoResolve
>
true
</
AutoResolve
>
<
AlertPriority
>
Normal
</
AlertPriority
>
<
AlertSeverity
>
Error
</
AlertSeverity
>
<
AlertParameters
>
<
AlertParameter1
>
$Target/Property[Type="Windows!Microsoft.Windows.LogicalDevice"]/Name$
</
AlertParameter1
>
</
AlertParameters
>
</
AlertSettings
>
<
OperationalStates
>
<
OperationalState
ID
=
"
NotAvailabile"
MonitorTypeStateID
="
Bad"
HealthState
="
Error"
/>
<
OperationalState
ID
=
"
Availabile"
MonitorTypeStateID
="
Good"
HealthState
="
Success"
/>
</
OperationalStates
>
</ UnitMonitor >