LDAP Search Time Monitor

Microsoft.Exchange.ExchangeComponent.IS.LDAPSearchTime (UnitMonitor)

Knowledge Base article:

Summary

LDAP Search Time Monitor: This monitor alerts if the LDAP Search Time is outside the defined threshold. Any alert indicates that global catalog issues may be affecting the performance of your Exchange Server environment.

Causes

Note: This counter only measures the search time for queries over LDAP originating from DSAccess. Long search times for these queries do not necessarily indicate that the Active Directory service is also experiencing excessive latency.

High latencies for low-intensity queries usually indicate network connectivity or DNS problems.

Resolutions

Do one or more of the following:

If this condition occurs often, or if other server problems are evident (such as growing SMTP queues), review the Application log for DSAccess Warning and Error events. Use the information provided in those events to diagnose the underlying cause.

Make sure that you have correctly deployed and configured Active Directory servers and global catalog servers. For a list of best practices for deploying and configuring Active Directory domain controllers and global catalog servers, see the "Ensuring Reliable Access to Active Directory and Domain Name System" section of "System-Level Fault Tolerance Measures" ( http://go.microsoft.com/fwlink/?LinkId=50505).

Note DSAccess automatically tracks the responsiveness of domain controllers and global catalog servers and will load balance its queries from slow directories.

Configuration

Settings:

External

Make sure that you have correctly deployed and configured Active Directory servers and global catalog servers. For a list of best practices for deploying and configuring Active Directory domain controllers and global catalog servers, see the "Ensuring Reliable Access to Active Directory and Domain Name System" section of "System-Level Fault Tolerance Measures" ( http://go.microsoft.com/fwlink/?LinkId=50505).

Element properties:

TargetMicrosoft.Exchange.ExchangeComponent.IS
Parent MonitorSystem.Health.PerformanceState
CategoryCustom
EnabledTrue
Instance NameMSExchangeDSAccess Processes
Counter NameLDAP Search Time
Frequency300
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeSystem.Performance.ConsecutiveSamplesThreshold
RemotableTrue
AccessibilityPublic
Alert Message
LDAP Search Time is above configured threshold

The LDAP Search Time is above configured threshold. The current value is {0}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Exchange.ExchangeComponent.IS.LDAPSearchTime" Accessibility="Public" Enabled="onStandardMonitoring" Target="Exch2003Core!Microsoft.Exchange.ExchangeComponent.IS" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="SystemPerf!System.Performance.ConsecutiveSamplesThreshold" ConfirmDelivery="false">
<Category>Custom</Category>
<AlertSettings AlertMessage="Microsoft.Exchange.ExchangeComponent.IS.LDAPSearchTime.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Value$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="AboveThreshold" MonitorTypeStateID="ConditionTrue" HealthState="Error"/>
<OperationalState ID="BelowThreshold" MonitorTypeStateID="ConditionFalse" HealthState="Success"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName>LDAP Search Time</CounterName>
<ObjectName>MSExchangeDSAccess Processes</ObjectName>
<InstanceName/>
<AllInstances>true</AllInstances>
<Frequency>300</Frequency>
<Threshold>50</Threshold>
<Direction>greater</Direction>
<NumSamples>5</NumSamples>
</Configuration>
</UnitMonitor>