Övervakar den totala processoranvändningen för servern genom att korrelera prestandaräknarna Processorinformation\processortid i procent\_Totalt och System\Kölängd för processor i Windows Server 2008 R2-operativsystem.
Processoranvändningen (Processorinformation\Processortid i procent\_Totalt och Kölängd för system) för systemprocessorerna har överskridit tröskelvärdet. När tröskelvärdet överskrids kan det avsevärt försämra systemets övergripande prestanda vilket leder till försämrade operativsystems- och programprestanda.
Den här övervakaren avser bara Windows Server 2008 R2-operativsystemet.
Övervakningsrutinen Total processoranvändning är en mycket konfigurerbar lösning som gör att operatörer kan ange varierande tröskelvärden för både prestandaräknaren System\Processorkö och prestandaräknaren Processor\processortid i procent\_Totalt. När värdena för båda räknarna har överskridit de definierade tröskelvärdena för flera på varandra följande insamlingar, sker en tillståndsändring för övervakaren. Du kan även konfigurera hur många på varandra följande insamlingar över tröskelvärdet som måste samlas in, innan tillståndet ändras.
Standardtröskelvärdena för övervakningsrutinen Total processoranvändning omfattar:
Parameter | Standardvärde |
CPUQueueLengthThreshold | 15 |
CPUPercentageThreshold | 95 |
NumSamples | 3 |
Tänk på att åsidosättningar kan användas för att ändra vilket tröskelvärde som helst av de angivna ovan.
När en dator uppvisar omfattande belastning under längre tid, kan orsaken vara något av följande villkor:
Resurskraven för den installerade programuppsättningen på datorn överskrider kapaciteterna för datorns maskinvarukonfiguration.
Kraven på datorns resurser har ökat med tiden och datorns maskinvarukonfiguration kan inte längre möta det ökande behovet.
Ett program som körs på datorn kan ha övergått i ett felaktigt tillstånd och kräver nu oregelbundet mycket systemresurser.
Om du vill visa den senaste historiken över processorrelaterade prestandaräknare kan du använda följande vy:
Starta prestandavyn Processor
En administratör kan utföra följande aktiviteter för att åtgärda det här problemet:
1. Utvärdera räknaren för procentuell processoranvändning för var och en av de processer som körs på servern. Du kan använda Aktivitetshanteraren eller snapin-modulen Prestandaövervakning. Kontrollera vilka processer som använder mest resurser och övervaka dem över tid för att fastställa om de verkar återgå till normala prestandaintervall. Om inte bör fler specifika diagnostiktest utföras för att fastställa det bästa sättet att lösa problemet.
2. Om det står klart att klientbelastningen har ökat över tid och att datorn inte längre kan tillgodose behovet, utför du ytterligare prestandaövervakningsprocedurer för att avgöra om grundläggande maskinvaruuppgraderingar kan hjälpa datorn att återgå till optimala prestandaintervall.
3. Om det även står klart att programmet har övergått i ett felaktigt tillstånd, eventuellt på grund av ett produktfel, kan det krävas att du startar om programmet. Om problemet kvarstår kan du bli tvungen att kontakta programtillverkaren.
Target | Microsoft.Windows.Server.2008.R2.OperatingSystem | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | PerformanceHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.Windows.Server.2008.CPUUtilization.Monitortype | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.Windows.Server.2008.R2.OperatingSystem.TotalCPUUtilization" Accessibility="Public" Enabled="true" Target="Server2008!Microsoft.Windows.Server.2008.R2.OperatingSystem" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.Windows.Server.2008.CPUUtilization.Monitortype" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.2008.R2.OperatingSystem.TotalCPUUtilization.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Property[@Name='PctUsage']$</AlertParameter1>
<AlertParameter2>$Data/Context/Property[@Name='QueueLength']$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="OverThreshold" MonitorTypeStateID="CPUUtilizationHigh" HealthState="Error"/>
<OperationalState ID="UnderThreshold" MonitorTypeStateID="CPUUtilizationNormal" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>900</IntervalSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
<TargetComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</TargetComputerName>
<CPUPercentageThreshold>95</CPUPercentageThreshold>
<CPUQueueLengthThreshold>15</CPUQueueLengthThreshold>
<NumSamples>3</NumSamples>
<CounterName>% Processor Time</CounterName>
<ObjectName>Processor Information</ObjectName>
<InstanceName>_Total</InstanceName>
<AllInstances>false</AllInstances>
</Configuration>
</UnitMonitor>