Totale percentage DPC-tijd van het besturingssysteem

Microsoft.Linux.SLES.11.OperatingSystem.TotalPercentDPCTime.Monitor (UnitMonitor)

Monitor voor het totale percentage aan DPC-tijd van het SUSE Linux Enterprise Server 11-besturingssysteem

Knowledge Base article:

Samenvatting

Het totale percentage DPC-tijd (voor alle processors) is hoog. Systeemprestaties kunnen nadelig worden beïnvloed.

De totale DPC-tijd is de tijd die alle processors besteden aan het ontvangen en verwerken van uitgestelde procedure aanroepen (DPC's). DPC's (deferred procedure calls) zijn interrupts met een lagere prioriteit dan standaardinterrupts. Percentage DPC-tijd is een onderdeel van Percentage tijd in beschermde modus omdat DPC's worden uitgevoerd in de beschermde modus. Als er aanhoudend een hoog percentage DPC-tijd is, kan er een knelpunt voor een processor zijn of een toepassings- of hardwaregerelateerd probleem dat de algehele systeemprestaties aanzienlijk kan verminderen.

De monitordrempelwaarde wordt geanalyseerd tegen het gemiddelde van de waarden die in peilingen aan de agent worden geretourneerd. De parameter Aantal steekproeven bepaalt het aantal steekproeven dat bij de berekening van het gemiddelde is opgenomen. De door de agent geretourneerde waarde is het oplopende gemiddelde van de vijf meest recente waarden die in intervals van 1 minuut zijn opgevraagd.

Configuratie

Standaardconfiguratie

Parameter

Standaardwaarde

Drempelwaarde

15

Interval (seconden)

300

Aantal voorbeelden

3

Onderdrukkingen kunnen worden gebruikt om de hierboven gedefinieerde parameterwaarden te wijzigen voor alle exemplaren of voor specifieke exemplaren of groepen.

Oorzaken

Een hoge DPC-tijd kan worden veroorzaakt door een of meer van de volgende:

Oplossingen

Volg de onderstaande procedure om de oorzaak van een hoge DPC-tijd te bepalen. Observeer welk deel van de processortijd aan de verwerking van interrupts en DPC's wordt besteed. Controleer hiervoor de volgende metrieken:

Vergelijk de waarden van het Percentage interrupttijd (_Totaal) en Percentage DPC-tijd (_Totaal) Percentage processortijd (_Totaal).

Als Percentage processortijd (_Totaal) aanhoudend > 85% en Percentage interrupt-tijd (_Totaal) of Percentage DPC-tijd (_Totaal) > 15% is, zijn de processors waarschijnlijk de oorzaak van het prestatieknelpunt. Dit knelpunt kan worden verholpen door de processors te upgraden of toe te voegen aan de computer.

Als Percentage processortijd (_Totaal) aanhoudend < 85% en Percentage interrupt-tijd (_Totaal) of Percentage DPC-tijd (_Totaal) > 15% is, is het prestatieprobleem mogelijk te wijten aan een toepassings- of hardwareprobleem.

Element properties:

TargetMicrosoft.Linux.SLES.11.OperatingSystem
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
Totale percentage DPC-tijd is te hoog
De drempelwaarde voor het prestatiemeteritem Processor\Percentage DPC-tijd\_Totaal is overschreden. De waarde die groter is dan de drempelwaarde is: {0}.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Linux.SLES.11.OperatingSystem.TotalPercentDPCTime.Monitor" Accessibility="Public" Target="Microsoft.Linux.SLES.11.OperatingSystem" TypeID="Unix!Microsoft.Unix.WSMan.Performance.Filtered.Average.Threshold.MonitorType" Enabled="true" ParentMonitorID="SystemHealth!System.Health.PerformanceState">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.Linux.SLES.11.OperatingSystem.TotalPercentDPCTime.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>_Total</InstanceName>
<InstanceProperty>/DataItem/WsManData/*[local-name(.)='SCX_ProcessorStatisticalInformation']/*[local-name(.)='Name']</InstanceProperty>
<Value>$Data/WsManData/*[local-name(.)='SCX_ProcessorStatisticalInformation']/*[local-name(.)='PercentDPCTime']$</Value>
<Threshold>15</Threshold>
<NumSamples>3</NumSamples>
</Configuration>
</UnitMonitor>