Esegue il monitoraggio dell'utilizzo CPU totale di questo server correlando i contatori delle prestazioni Informazioni sul processore\\% Tempo processore\_Totale e Sistema\Lunghezza coda processore nel sistema operativo Windows Server 2008 R2.
L'utilizzo della CPU (Informazioni sul processore\% Tempo processore\_Totale e Lunghezza coda sistema) per il processore o i processori di sistema ha superato la soglia. Una volta superata la soglia, le prestazioni generali del sistema rallentano in modo significativo, rallentando anche il funzionamento del sistema operativo e le prestazioni delle applicazioni.
Il monitoraggio è valido solo per il sistema operativo Windows Server 2008 R2.
La routine di monitoraggio Utilizzo CPU totale è una soluzione ampiamente configurabile che consente agli operatori di impostare dei valori di soglia per entrambi i contatori delle prestazioni, Sistema\Coda processore e Processore\% Tempo processore\_Totale. Quando i valori di entrambi i contatori superano le soglie definite per diversi campioni consecutivi, si verificherà una modifica di stato per il monitoraggio. Anche il numero di campioni consecutivi da raccogliere oltre la soglia prima che lo stato venga modificato è configurabile.
I valori di soglia predefiniti per la routine di monitoraggio Utilizzo CPU totale includono:
Parametro | Valore predefinito |
CPUQueueLengthThreshold | 15 |
CPUPercentageThreshold | 95 |
NumSamples | 3 |
Le sostituzioni possono essere utilizzate per modificare i valori di soglia definiti in precedenza.
Quando un computer è soggetto a un notevole carico di lavoro per un lungo periodo di tempo, è possibile che la causa derivi da una delle situazioni seguenti:
I requisiti di risorse dell'insieme di applicazioni installate sul computer supera le capacità della configurazione hardware del computer.
La richiesta di risorse del computer è aumentata nel tempo e la configurazione hardware del computer non è più in grado di soddisfare l'aumento di richieste.
È possibile che un'applicazione in esecuzione sul computer si trovi in condizione di instabilità e impegni una quantità abnorme di risorse del sistema.
Per visualizzare la cronologia recente del contatore delle prestazioni relativo al processore, è possibile utilizzare la seguente vista:
Vista prestazioni avvio del processore
Per risolvere questo problema, è possibile che l'amministratore effettui le operazioni seguenti:
1. Esaminare il contatore % utilizzo processore per ciascuno dei processi in esecuzione sul server. Per effettuare questa operazione, è possibile utilizzare Task Manager o lo snap-in Monitoraggio prestazioni. Determinare quali sono i processi che stanno impegnando la maggior parte delle risorse e monitorarli nel tempo per determinare se sembrano rientrare in livelli di prestazioni normali. In caso contrario, è necessario eseguire utilità diagnostiche aggiuntive, specifiche per le applicazioni, per determinare il modo più adatto per risolvere il problema.
2. Se è stato stabilito che il carico generato dai client è aumentato nel tempo e il computer non è semplicemente più in grado di soddisfare le richieste, è necessario eseguire alcune procedure aggiuntive di monitoraggio delle prestazioni per stabilire quali aggiornamenti dell'hardware di base possono consentire al computer di tornare a livelli di prestazioni ottimali.
3. Se è stato stabilito che l'applicazione è in condizioni di instabilità, probabilmente causate da difetti nel prodotto, potrebbe essere necessario riavviare l'applicazione. Se il problema persiste, è possibile contattare il produttore dell'applicazione.
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>