Övervakar prestandaräknaren Fysisk disk\Aktuell diskkölängd
Den fysiska disken har ett konstant högt värde för räknaren "Aktuell kölängd" under flera insamlingar i följd. Det här resulterar i att fördröjningen för I/O-förfrågningar sannolikt ökar på den fysiska disken.
Aktuell kölängd är antalet utestående förfrågningar på disken vid den tidpunkt då prestandadata samlas in. Detta innebär att den fysiska disken inte kan hantera I/O-förfrågningar i den takt de ställs.
Antingen har det nyligen förekommit ökad aktivitet på den fysiska disken vilket har resulterat i att tröskelvärdet överskridits, eller också har användningen ökat stadigt under en längre tid för att slutligen passera tröskelvärdet.
En annan möjlighet är att en del av de underliggande fysiska diskarna eller diskundersystemet inte fungerar som det ska eller är felkonfigurerat, vilket påverkar den fysiska diskens prestanda.
Om du vill undersöka problemet ytterligare kan du prova följande:
Granska systemhändelseloggen och sök efter fel som tyder på problem med den fysiska disken, fysiska diskar eller underlagringssystemet.
Granska historiken för aktuell kölängd för disken med hjälp av antingen prestandavyer eller rapporter i Operations Manager eller via prestandaövervakaren. På så vis ser du om problemet är nytt eller om aktiviteten har ökat stadigt under en längre tid.
Granska de andra prestandaräknarna för den fysiska disken, till exempel Disk – byte/s, Diskläsningar/s och Diskskrivningar/s för att ta reda på vilka typer av I/O-aktiviteter som står för den övergripande diskanvändningen.
Granska prestandaräknarna för Process, t.ex. I/O-dataåtgärder per sekund, för att identifiera vilka processer som främst orsakar de övergripande I/O-aktiviteterna på systemet. När du har identifierat de främsta processerna kan du med räknarna I/O-läsåtgärder per sekund och I/O-skrivåtgärder per sekund fastställa vilken typ av I/O-åtgärd som processen utför.
Lösningarna kan variera baserat på resultatet av denna ytterligare undersökning och kan omfatta något av följande:
Åtgärda eventuella problem eller felaktiga konfigureringar med underlagringssytemet.
Skala ned hastigheten på I/O-åtgärder på systemet eller fördela arbetsbelastningen över flera fysiska diskar.
Uppgradera enheterna eller underlagringssystemet för att hantera den ökade belastningen.
Om den ökade belastningen är acceptabel kan övervakarens tröskelvärde ändras till mindre restriktiv. På samma sätt kan du öka antalet insamlingar i följd för att tvinga övervakaren att bara ändra tillstånd när användningen är konstant under en längre tid.
Target | Microsoft.Windows.Server.2008.PhysicalDisk | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | PerformanceHealth | ||
Enabled | True | ||
Instance Name | PhysicalDisk | ||
Counter Name | Current Disk Queue Length | ||
Frequency | 300 | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | System.Performance.ConsecutiveSamplesThreshold | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.Windows.Server.2008.PhysicalDisk.CurrentDiskQueueLength" Accessibility="Public" Enabled="true" Target="Server2008!Microsoft.Windows.Server.2008.PhysicalDisk" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="SystemPerf!System.Performance.ConsecutiveSamplesThreshold" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.2008.PhysicalDisk.CurrentDiskQueueLength.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters/>
</AlertSettings>
<OperationalStates>
<OperationalState ID="OverThreshold" MonitorTypeStateID="ConditionTrue" HealthState="Warning"/>
<OperationalState ID="UnderThreshold" MonitorTypeStateID="ConditionFalse" HealthState="Success"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName>Current Disk Queue Length</CounterName>
<ObjectName>PhysicalDisk</ObjectName>
<InstanceName>$Target/Property[Type="WindowsServer!Microsoft.Windows.Server.PhysicalDisk"]/PerfmonInstance$</InstanceName>
<Frequency>300</Frequency>
<Threshold>32</Threshold>
<Direction>greaterequal</Direction>
<NumSamples>12</NumSamples>
</Configuration>
</UnitMonitor>