EXBPA Run Local Monitor

EXBPA_Run_Local.Monitor (UnitMonitor)

Knowledge Base article:

Summary

Exchange BPA local monitor: This monitor checks if the any problems are return by the Exchange Best Practices run on the local system.

Causes

The Microsoft Exchange Server Best Practices Analyzer (ExBPA) is an automated health check and troubleshooting tool. Written in C#, it collects configuration settings and performs network and protocol tests in an Exchange topology.

The tool sends the results to an XML output file. Rules are then applied to the values in the output file. When you view the output file, any differences from the rules or any problems are highlighted.

The ExBPA tool can examine the Active Directory directory service, the registry, the Internet Information Services (IIS) metabase, System Monitor tool data, Windows Management Instrumentation (WMI), and files to retrieve configuration information.

Resolutions

System requirements Check list:

Permissions and account configuration:

Make sure that the account that is used to run the tool has the appropriate credentials to access the Active Directory and all servers that are included in the scan.

Configuration

IntervalSeconds: Default 864000 sec (=1 day).

SyncTime - Allows to define a fixed time to run: Default 00:00 (midnight).

Element properties:

TargetMicrosoft.Exchange.ApplicationComponent.ExBPA
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeEXBPA_Run_Local.Monitortype
RemotableTrue
AccessibilityPublic
Alert Message
Exchange EXBPA execution failed
There's a problem running the Exchange Best Practices on the local system.
RunAsDefault

Source Code:

<UnitMonitor ID="EXBPA_Run_Local.Monitor" Accessibility="Public" Enabled="onStandardMonitoring" Target="Exch2003Core!Microsoft.Exchange.ApplicationComponent.ExBPA" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="EXBPA_Run_Local.Monitortype" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="EXBPA_Run_Local.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
</AlertSettings>
<OperationalStates>
<OperationalState ID="OK" MonitorTypeStateID="OK" HealthState="Success"/>
<OperationalState ID="NotOK" MonitorTypeStateID="NotOK" HealthState="Error"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>86400</IntervalSeconds>
<SyncTime>00:00</SyncTime>
<TargetNetbiosComputer>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetbiosComputerName$</TargetNetbiosComputer>
<TimeoutSeconds>900</TimeoutSeconds>
</Configuration>
</UnitMonitor>