Windows DNS Server 2016 및 1709 이상의 캐시 제한 도달

Microsoft.Windows.DNSServer.2016.Monitor.CacheLimitHit (UnitMonitor)

구성된 캐시 크기 모니터링

Knowledge Base article:

요약

구성된 캐시 제한을 모니터링하는 이벤트 기반 모니터입니다.

원인

경고 상태

ID가 7688인 이벤트에 의해 트리거됩니다. 원인: DNS 서버의 캐시 크기가 구성된 제한에 접근하고 있습니다. 재귀 스레드에 의해 이벤트가 발생하여 캐시 크기를 구성된 제한 내로 내려졌습니다. 시스템에서 CPU 스파이크가 일시적으로 발생할 수 있습니다.

위험 상태

ID가 7689인 이벤트에 의해 트리거됩니다. 원인: DNS 서버의 캐시 크기가 구성된 제한에 접근하고 있습니다. 시간 초과 스레드가 시작되어 캐시 크기를 구성 제한 내로 줄였습니다. 시스템에서 CPU 스파이크가 일시적으로 발생할 수 있습니다.

ID가 7690인 이벤트에 의해 정상 상태가 트리거될 수 있습니다. DNS 서버의 캐시 크기가 구성된 제한 내로 조정되었습니다.

해결 방법

DNS 서버가 자동으로 청소되고 필요한 경우 캐시를 플러시하여 구성된 제한 아래로 낮춥니다. 사용자는 이로 인해 CPU 스파이크가 발생할 수 있습니다. 이 오류가 너무 잦은 경우 구성된 캐시 제한을 확인하세요. 배포에 대해 너무 낮은 경우 적절하게 변경하세요.

Element properties:

TargetMicrosoft.Windows.DNSServer.2016.Server
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.3SingleEventLog3StateUnitMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Windows DNS Server 2016 및 1709 이상의 - 캐시 제한 도달 모니터 경고

이벤트 ID: {0}
이벤트 원본: {1}
이벤트 로그: {2}
이벤트 설명: {3}
RunAsMicrosoft.Windows.DNSServer.2016.ActionAccount

Source Code:

<UnitMonitor ID="Microsoft.Windows.DNSServer.2016.Monitor.CacheLimitHit" Accessibility="Public" Enabled="true" Target="Microsoft.Windows.DNSServer.2016.Server" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" RunAs="Microsoft.Windows.DNSServer.2016.ActionAccount" TypeID="Windows!Microsoft.Windows.3SingleEventLog3StateUnitMonitorType" ConfirmDelivery="true">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.DNSServer.2016.Monitor.CacheLimitHit_AlertMessageResourceID">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/EventDisplayNumber$</AlertParameter1>
<AlertParameter2>$Data/Context/EventSourceName$</AlertParameter2>
<AlertParameter3>$Data/Context/Channel$</AlertParameter3>
<AlertParameter4>$Data/Context/EventDescription$</AlertParameter4>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="WarningState" MonitorTypeStateID="FirstEventRaised" HealthState="Warning"/>
<OperationalState ID="ErrorState" MonitorTypeStateID="SecondEventRaised" HealthState="Error"/>
<OperationalState ID="SuccessState" MonitorTypeStateID="ThirdEventRaised" HealthState="Success"/>
</OperationalStates>
<Configuration>
<FirstComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</FirstComputerName>
<FirstLogName>DNS Server</FirstLogName>
<FirstExpression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">7688</Value>
</ValueExpression>
</SimpleExpression>
</FirstExpression>
<SecondComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</SecondComputerName>
<SecondLogName>DNS Server</SecondLogName>
<SecondExpression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">7689</Value>
</ValueExpression>
</SimpleExpression>
</SecondExpression>
<ThirdComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ThirdComputerName>
<ThirdLogName>DNS Server</ThirdLogName>
<ThirdExpression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">7690</Value>
</ValueExpression>
</SimpleExpression>
</ThirdExpression>
</Configuration>
</UnitMonitor>