每次邏輯磁碟讀取的平均秒數

Microsoft.Windows.Server.10.0.LogicalDisk.AvgDiskSecPerRead (UnitMonitor)

監視效能計數器 LogicalDisk\Avg Disk Sec Per Read

Knowledge Base article:

摘要

Avg.Disk sec/Read (LogicalDisk\Avg.Disk sec/Read) 已超過閾值。依賴此邏輯磁碟之應用程式的效能可能會受到負面影響,因為磁碟處理讀取要求的時間非常久。

Avg.Disk sec/Read 計數器會指出特定邏輯磁碟讀取資料的平均速度。

原因

當作業系統或應用程式的磁碟寫入要求突然暴增時,Avg.Disk sec/Read 效能計數器值可能會偏高。

解決方式

若要檢視 Logical Disk\Avg.Disk sec/Read 效能計數器的最新歷程,可以使用下列檢視:

啟動 Logical Disk Avg.Disk Sec/Reads 效能檢視

若要增加邏輯磁碟的可用儲存子系統輸送量,請執行下列一項或多項操作:

請務必針對特定儲存硬體適當地設定此閾值。此閾值會因磁碟的基礎儲存子系統而異。例如,「磁碟」可能是單一磁針或大型磁碟陣列。

其他

Avg.Disk sec/Read 計數器會用於收集輸送量資料。如果平均時間夠長,您可以分析陣列回應特定負載的長條圖 (佇列、要求大小等)。可能的話,您應該分別觀察工作負載。

您可以使用輸送量指標來確定:

但是,如果對邏輯磁碟的基礎儲存子系統沒有全面的瞭解 (例如,瞭解它是單一磁針還是大型磁碟陣列),就很難提供一個適合所有閾值的最佳大小。

您還必須將 Avg.Disk sec/Read 計數器與其他讀取要求特性 (例如要求大小及隨機性/連續性) 及讀取磁碟要求的對等計數器一併考量。

若追蹤 Avg.Disk sec/Read 計數器一段時間,該計數器會隨著控制讀取要求的工作負載飽和度而增加;當輸送量未增加,但整體系統輸送量開始下降時,可合理懷疑邏輯磁碟已達飽和。

如需有關存放結構與驅動程式支援的詳細資訊,請參閱「儲存體 - 架構與驅動程式支援」網站,網址是 http://go.microsoft.com/fwlink/?LinkId=26156

Element properties:

TargetMicrosoft.Windows.Server.10.0.LogicalDisk
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledFalse
Instance NameLogicalDisk
Counter NameAvg. Disk sec/Read
Frequency60
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeSystem.Performance.ConsecutiveSamplesThreshold
RemotableTrue
AccessibilityPublic
Alert Message
磁碟讀取延遲過長
Logical Disk\Avg.Disk sec/Read 效能計數器已超過閾值。
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.Server.10.0.LogicalDisk.AvgDiskSecPerRead" Accessibility="Public" Enabled="false" 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.AvgDiskSecPerRead.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>Avg. Disk sec/Read</CounterName>
<ObjectName>LogicalDisk</ObjectName>
<InstanceName>$Target/Property[Type="Windows!Microsoft.Windows.LogicalDevice"]/DeviceID$</InstanceName>
<Frequency>60</Frequency>
<Threshold>0.04</Threshold>
<Direction>greater</Direction>
<NumSamples>15</NumSamples>
</Configuration>
</UnitMonitor>