Global Catalog Search Availability Monitor

Microsoft.Windows.Server.2012.AD.Availability.GCResponse.Monitor (UnitMonitor)

Monitor that the domain controller is able to perform a global catalog search.

Knowledge Base article:

Summary

Global Catalog Search Availability Monitor. This monitor performs a Global Catalog search.

If the search fails, an alert will be generated.

Configuration

Interval: default 300 seconds

Causes

An attempt to search the global catalog failed.

Resolutions

View the alert data for additional information.

If the script failed to perform a search, verify that Active Directory Domain Services is in a healthy state using dcdiag.

External

Element properties:

TargetMicrosoft.Windows.Server.2012.AD.GlobalCatalogServerRole
Parent MonitorMicrosoft.Windows.Server.2012.AD.ResponseMonitors.Availability.AggregateMonitor
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.Server.2012.AD.Availability.GCResponse.Monitortype
RemotableFalse
AccessibilityPublic
Alert Message
The Global Catalog Search Availability script has failed.

The search script has failed.
Error: {0}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.Server.2012.AD.Availability.GCResponse.Monitor" Accessibility="Public" Enabled="true" Target="AD2012Core!Microsoft.Windows.Server.2012.AD.GlobalCatalogServerRole" ParentMonitorID="Microsoft.Windows.Server.2012.AD.ResponseMonitors.Availability.AggregateMonitor" Remotable="false" Priority="Normal" TypeID="Microsoft.Windows.Server.2012.AD.Availability.GCResponse.Monitortype" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.2012.AD.Availability.GCResponse.Monitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Property[@Name='ErrorString']$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ResponseOK" MonitorTypeStateID="ResponseOK" HealthState="Success"/>
<OperationalState ID="ResponseError" MonitorTypeStateID="ResponseError" HealthState="Error"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>300</IntervalSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>