Monitor voor het percentage DPC-tijd van de Red Hat Enterprise Linux Server 7-processor
Het percentage DPC-tijd (voor één processor) is hoog. Systeemprestaties kunnen nadelig worden beïnvloed.
De DPC-tijd van de processor is de tijd die één processor besteed 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.
De bewaking van afzonderlijke processors is standaard uitgeschakeld. Schakel bewaking in door de objectdetectie Red Hat Enterprise Linux Server 7-processor detecteren in te schakelen.
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.
Een hoge DPC-tijd kan worden veroorzaakt door een of meer van de volgende:
Processorknelpunt
Softwareprobleem
Hardware- of stuurprogrammagerelateerd probleem
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:
Processor\Percentage processortijd
Processor\Percentage interrupttijd
Processor\Percentage DPC-tijd
Vergelijk de waarden van het Percentage interrupttijd en Percentage DPC-tijd met Percentage processortijd voor elk processorexemplaar.
Als Percentage processortijd aanhoudend > 85% en Percentage interrupt-tijd of Percentage DPC-tijd > 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 aanhoudend < 85% en Percentage interrupt-tijd of Totaal percentage DPC-tijd > 15% is, is het prestatieprobleem mogelijk te wijten aan een toepassings- of hardwareprobleem.
Target | Microsoft.Linux.RHEL.7.Processor | ||
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.Unix.WSMan.Performance.Filtered.Average.Threshold.MonitorType | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.Linux.RHEL.7.Processor.PercentDPCTime.Monitor" Accessibility="Public" Target="Microsoft.Linux.RHEL.7.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.RHEL.7.Processor.PercentDPCTime.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(.)='PercentDPCTime']$</Value>
<Threshold>15</Threshold>
<NumSamples>3</NumSamples>
</Configuration>
</UnitMonitor>