Monitor średniej liczby wątków ATQ

Microsoft.Windows.Server.2012.AD.Performance.Atq.AvgThreads.Monitor (UnitMonitor)

Monitoruje łączną liczbę używanych wątków ATQ.

Knowledge Base article:

Podsumowanie

Monitor średniej liczby wątków w asynchronicznej kolejce wątków (ATQ). Użycie wskazuje dużą liczbę wątków ATQ, co może mieć wpływ na przepływność żądań klienta.

Istnieje stała liczba wątków dostępnych na potrzeby obsługi żądań. Domyślna i zalecana konfiguracja to 4 wątki na rdzeń procesora. Jeśli wszystkie wątki są używane, dodatkowe żądania będą w kolejce do czasu udostępnienia wątku.

Przyczyny

Prawdopodobne przyczyny:

Rozwiązania

Wyświetl ogólną wydajność systemu komputera, by ustalić, czy są potrzebne dodatkowe zasoby.

Dodaj więcej kontrolerów domeny, by lepiej zrównoważyć obciążenie.

Upewnij się, że usługi DNS działają na dostatecznie dużej liczbie kontrolerów domeny.

Zewnętrzne

Element properties:

TargetMicrosoft.Windows.Server.2012.AD.DomainControllerRole
Parent MonitorMicrosoft.Windows.Server.2012.AD.AtqMonitors.Performance.AggregateMonitor
CategoryCustom
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.Server.2012.AD.Performance.Atq.AvgThreads.Monitor.Monitortype
RemotableFalse
AccessibilityPublic
Alert Message
Łączna liczba używanych wątków ATQ przekroczyła co najmniej jedną wartość progową dla wielu próbek.
{0}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.Server.2012.AD.Performance.Atq.AvgThreads.Monitor" Accessibility="Public" Enabled="true" Target="AD2012Core!Microsoft.Windows.Server.2012.AD.DomainControllerRole" ParentMonitorID="Microsoft.Windows.Server.2012.AD.AtqMonitors.Performance.AggregateMonitor" Remotable="false" Priority="Normal" TypeID="Microsoft.Windows.Server.2012.AD.Performance.Atq.AvgThreads.Monitor.Monitortype" ConfirmDelivery="false">
<Category>Custom</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.2012.AD.Performance.Atq.AvgThreads.Monitor.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Property[@Name='ErrorString']$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ThreadUsageOK" MonitorTypeStateID="ThreadUsageOK" HealthState="Success"/>
<OperationalState ID="ThreadUsageWarn" MonitorTypeStateID="ThreadUsageWarn" HealthState="Warning"/>
<OperationalState ID="ThreadUsageError" MonitorTypeStateID="ThreadUsageError" HealthState="Error"/>
</OperationalStates>
<Configuration>
<Frequency>300</Frequency>
<TimeoutSeconds>300</TimeoutSeconds>
<WarnThreshold>80</WarnThreshold>
<ErrorThreshold>90</ErrorThreshold>
<NumSamples>10</NumSamples>
<MaxPoolThreads>4</MaxPoolThreads>
</Configuration>
</UnitMonitor>