Мониторинг счетчика производительности "Логический диск\Текущая длина очереди диска"
На логическом диске наблюдалось стабильно высокое значение датчика "Текущая длина очереди" при нескольких последовательных считываниях. В результате на данном логическом диске, скорее всего, увеличатся задержки выполнения запросов ввода-вывода.
"Текущая длина очереди диска" — это количество запросов, находящихся в состоянии ожидания на диске в момент сбора данных о производительности. Это означает, что скорость, с которой поступают запросы ввода-вывода, превышает скорость обработки таких запросов логическим диском.
Возможно, на логическом диске недавно наблюдалось существенное увеличение количества операций, и это привело к превышению порога, либо степень использования диска постоянно росла с течением времени и превысила пороговое значение.
Также не исключено, что некоторая часть физических дисков или дисковой подсистемы имеет неисправность или неправильно настроена, что сказывается на производительности логического диска.
Для дальнейшей диагностики проблемы выполните следующие действия.
Просмотрите системный журнал событий на предмет каких-либо проблем с логическим диском, физическими дисками или подсистемой хранения.
Просмотрите историю текущей длины очереди для данного логического диска в представлениях производительности или отчетах Operations Manager или в мониторе производительности. Это поможет определить, насколько давно возникла проблема, а также увеличивалась ли активность на протяжении большого промежутка времени.
Просмотрите другие счетчики производительности логического диска, например “Скорость обмена с диском (байт/сек)”, "Операции чтения с диска в секунду" и "Операции записи на диск в секунду", чтобы определить, какие типы операций ввода-вывода имеют место при использовании диска.
Просмотрите счетчики "Процесс", например "Операции ввода-вывода данных в секунду", чтобы определить, какие процессы оказывают наибольшее влияние на общее количество операций ввода-вывода в системе. После определения наиболее активных процессов следует обратиться к счетчикам "Операции ввода-вывода при чтении в секунду" и "Операции ввода-вывода при записи в секунду", чтобы выяснить типы операций ввода-вывода, выполняемых процессом.
На основании сведений, полученных при дальнейшем анализе, могут быть приняты различные решения, включая следующие.
Разрешить проблемы или исправить неправильную настройку подсистемы хранения данных.
Уменьшить количество операций ввода-вывода в системе или распределить рабочую нагрузку на большее число логических дисков.
Обновить диски или подсистему хранения для соответствия возросшей нагрузке.
Если повышенный уровень нагрузки является приемлемым, то пороговое значение монитора можно изменить на менее строгое. Аналогичным образом можно увеличить число последовательных считываний, чтобы монитор изменял свое состояние только при сохранении уровня использования на протяжении длительного времени.
Target | Microsoft.Windows.Server.2008.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.2008.LogicalDisk.CurrentDiskQueueLength" Accessibility="Public" Enabled="true" Target="Server2008!Microsoft.Windows.Server.2008.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.2008.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>