DNS 进程监视器

Microsoft.Windows.Server.2012.AD.PerformanceEssentialServices.DNS.Monitor (UnitMonitor)

监视 dns 进程的 CPU 使用率。

Knowledge Base article:

摘要

DNS 进程监视器。Active Directory Domain Services 集成式 DNS 的 DNS 进程正在消耗大量的 CPU 资源。

如果服务器上的总体 CPU 使用率过高,DNS 请求可能会延迟。

原因

可能的原因包括:

解决方案

查看计算机的整体系统性能,以确定它是否需要更多的资源。

添加更多的域控制器以帮助平衡负载。

确保有足够的 DC 在托管 DNS。

外部

Element properties:

TargetMicrosoft.Windows.Server.2012.AD.DomainController.DNS
Parent MonitorSystem.Health.PerformanceState
CategoryCustom
EnabledTrue
Instance NameProcess
Counter Name\% Processor Time
Frequency300
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeSystem.Performance.AverageThreshold
RemotableTrue
AccessibilityPublic
Alert Message
DNS 进程超出了处理器使用率阈值。
多个样本的 DNS 进程的平均 CPU 使用率:{3} \%
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.Server.2012.AD.PerformanceEssentialServices.DNS.Monitor" Accessibility="Public" Enabled="true" Target="AD2012Core!Microsoft.Windows.Server.2012.AD.DomainController.DNS" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="SystemPerf!System.Performance.AverageThreshold" ConfirmDelivery="false">
<Category>Custom</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.2012.AD.PerformanceEssentialServices.DNS.Monitor.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data[Default='']/Context/InstanceName$</AlertParameter1>
<AlertParameter2>$Data[Default='']/Context/ObjectName$</AlertParameter2>
<AlertParameter3>$Data[Default='']/Context/CounterName$</AlertParameter3>
<AlertParameter4>$Data[Default='']/Context/Value$</AlertParameter4>
<AlertParameter5>$Data[Default='']/Context/TimeSampled$</AlertParameter5>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="DNSLoadOk" MonitorTypeStateID="UnderThreshold" HealthState="Success"/>
<OperationalState ID="DNSLoadError" MonitorTypeStateID="OverThreshold" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName>% Processor Time</CounterName>
<ObjectName>Process</ObjectName>
<InstanceName>dns</InstanceName>
<AllInstances>false</AllInstances>
<Frequency>300</Frequency>
<Threshold>80</Threshold>
<NumSamples>10</NumSamples>
</Configuration>
</UnitMonitor>