Monitoruje licznik wydajności Dysk logiczny\Bieżąca długość kolejki dysku
Wysoka wartość licznika „Bieżąca długość kolejki” dla dysku logicznego utrzymywała się w wielu kolejnych próbkach. Oznacza to, że czas oczekiwania żądań operacji we/wy prawdopodobnie zwiększy się dla tego dysku logicznego.
Bieżąca długość kolejki dysku to liczba oczekujących żądań na dysku w momencie zbierania danych o wydajności. Oznacza to, że dysk logiczny nie może obsługiwać żądań operacji we/wy tak szybko, jak są one generowane.
Na dysku logicznym wystąpił ostatnio znaczący wzrost aktywności, przez co ten skok spowodował przekroczenie progu, lub użycie dysku logicznego stabilnie rosło w miarę upływu czasu, osiągając w końcu punkt przekraczający próg.
Inną przyczyną może być nieprawidłowe działanie lub niewłaściwa konfiguracja bazowych dysków fizycznych albo podsystemu dyskowego, co wpływa negatywnie na wydajność dysku logicznego.
W celu dalszego zbadania problemu można podjąć następujące kroki:
Przejrzyj dziennik zdarzeń systemowych w tym systemie, aby sprawdzić, czy występują jakieś błędy wskazujące problemy z dyskiem logicznym, dyskami fizycznymi lub podsystemem pamięci masowej.
Sprawdź historię bieżącej długości kolejki tego dysku logicznego przy użyciu widoków wydajności lub raportów w programie Operations Manager albo w monitorze wydajności. Pomoże to określić, czy problem pojawił się niedawno, czy też aktywność zwiększała się stale w dłuższym okresie.
Sprawdź inne liczniki wydajności dla dysku logicznego, takie jak „Bajty dysku/s”, „Odczyty dysku/s” i „Zapisy na dysku/s”, aby poznać typy operacji we/wy, które wpływają na ogólne użycie dysku.
Sprawdź liczniki wydajności procesów, takie jak „Operacje danych We/Wy/s” w celu zidentyfikowania procesów, które w największym stopniu wpływają na ogólne operacje we/wy tego systemu. Po zidentyfikowaniu najważniejszych procesów można użyć liczników „Operacje odczytu We/Wy/s” i „Operacje zapisu We/Wy/s” w celu dalszego określenia typu operacji we/wy, które są wykonywane przez dany proces.
Rozwiązania mogą się różnić w zależności od wyników tych badań i mogą obejmować:
Rozwiązanie wszystkich problemów z podsystemem pamięci masowej lub poprawienie jego konfiguracji.
Zmniejszenie liczby operacji we/wy wykonywanych w systemie lub rozłożenie obciążenia na większą liczbę dysków logicznych.
Uaktualnienie dysków lub podsystemu pamięci masowej w celu obsługi zwiększonego obciążenia.
Jeśli zwiększone obciążenie jest akceptowalne, można zmienić próg monitora na mniej restrykcyjną wartość. Można także zwiększyć liczbę kolejnych próbek, aby monitor zmieniał swój stan tylko w przypadku, gdy użycie utrzymuje się na wysokim poziomie przez dłuższy okres.
Target | Microsoft.Windows.Server.10.0.LogicalDisk | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | PerformanceHealth | ||
Enabled | True | ||
Instance Name | LogicalDisk | ||
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.10.0.LogicalDisk.CurrentDiskQueueLength" Accessibility="Public" Enabled="true" Target="ServervNext!Microsoft.Windows.Server.10.0.LogicalDisk" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="SystemPerf!System.Performance.ConsecutiveSamplesThreshold" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.10.0.LogicalDisk.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>LogicalDisk</ObjectName>
<InstanceName>$Target/Property[Type="Windows!Microsoft.Windows.LogicalDevice"]/DeviceID$</InstanceName>
<Frequency>300</Frequency>
<Threshold>32</Threshold>
<Direction>greaterequal</Direction>
<NumSamples>12</NumSamples>
</Configuration>
</UnitMonitor>