Percentuale tempo di Interrupt processore

Microsoft.Linux.Universal.Processor.PercentInterruptTime.Monitor (UnitMonitor)

Monitoraggio Percentuale tempo di Interrupt processore Universal Linux

Knowledge Base article:

Riepilogo

La percentuale del tempo di Interrupt (per un singolo processore) è elevata. Le prestazioni del sistema potrebbero essere compromesse.

Tempo di interrupt processore è il tempo che utilizza un singolo processore per ricevere ed elaborare gli interrupt hardware. Questo valore rappresenta un indicatore indiretto dell'attività delle periferiche che generano interrupt, come l'orologio di sistema, il mouse, i controller di archiviazione, le linee di comunicazione dati, le schede di rete e le altre periferiche. Questi dispositivi inviano in genere un interrupt al processore dopo aver completato un'operazione o quando ne richiedono l'attenzione. La consueta esecuzione dei thread viene sospesa durante gli interrupt.

La soglia di monitoraggio viene analizzata confrontandola con una media dei valori restituiti all'agente in forma di sondaggi, dove il parametro Numero di campioni si riferisce al numero di campioni inclusi nel calcolo della media. Il valore restituito dall'agente è la media in sequenza dei 5 valori più recenti con esecuzione di query a intervalli di 1 minuto.

Configurazione

Il monitoraggio dei singoli processori è disattivato per impostazione predefinita. Abilitare il monitoraggio consentendo l'individuazione oggetti denominata "Individuazione processore Universal Linux".

Configurazione predefinita

Parametro

Valore predefinito

Soglia

10

Intervallo (secondi)

300

Numero di campioni

3

Gli override possono essere usati per modificare i valori dei parametri definiti in precedenza per tutte le istanze oppure per istanze o gruppi specifici.

Cause

Una condizione con tempo di Interrupt alto indica spesso la presenza di un problema a una periferica hardware.

Soluzioni

Controllare i file di registro del sistema per individuare eventuali errori periferica.

Element properties:

TargetMicrosoft.Linux.Universal.Processor
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Unix.WSMan.Performance.Filtered.Average.Threshold.MonitorType
RemotableTrue
AccessibilityPublic
Alert Message
\% tempo di Interrupt troppo elevata
La soglia per il contatore delle prestazioni Processore\\% tempo di Interrupt è stata superata. Il valore che ha superato la soglia è: {0}.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Linux.Universal.Processor.PercentInterruptTime.Monitor" Accessibility="Public" Target="Universal!Microsoft.Linux.Universal.Processor" TypeID="Unix!Microsoft.Unix.WSMan.Performance.Filtered.Average.Threshold.MonitorType" Enabled="true" ParentMonitorID="SystemHealth!System.Health.PerformanceState">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.Linux.Universal.Processor.PercentInterruptTime.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Value$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState HealthState="Success" MonitorTypeStateID="UnderThreshold" ID="UnderThreshold"/>
<OperationalState HealthState="Error" MonitorTypeStateID="OverThreshold" ID="OverThreshold"/>
</OperationalStates>
<Configuration>
<TargetSystem>$Target/Host/Property[Type="Unix!Microsoft.Unix.Computer"]/NetworkName$</TargetSystem>
<Uri>http://schemas.microsoft.com/wbem/wscim/1/cim-schema/2/SCX_ProcessorStatisticalInformation?__cimnamespace=root/scx</Uri>
<Filter/>
<SplitItems>true</SplitItems>
<Interval>300</Interval>
<ObjectName>Processor</ObjectName>
<CounterName>% Interrupt Time</CounterName>
<InstanceName>$Target/Property[Type="Unix!Microsoft.Unix.Processor"]/PerfmonInstance$</InstanceName>
<InstanceProperty>/DataItem/WsManData/*[local-name(.)='SCX_ProcessorStatisticalInformation']/*[local-name(.)='Name']</InstanceProperty>
<Value>$Data/WsManData/*[local-name(.)='SCX_ProcessorStatisticalInformation']/*[local-name(.)='PercentInterruptTime']$</Value>
<Threshold>10</Threshold>
<NumSamples>3</NumSamples>
</Configuration>
</UnitMonitor>