每次磁碟傳輸的平均秒數

Microsoft.Windows.Client.Vista.PhysicalDisk.AvgDiskSecPerTransfer (UnitMonitor)

監視磁碟讀取及寫入延遲 (每次磁碟傳輸的平均秒數)。

Knowledge Base article:

摘要

實體磁碟的 Avg. Disk sec/Transfer (PhysicalDisk\Avg. Disk sec/Transfer) 已超過閾值。實體磁碟甚至於整體系統效能可能將明顯降低,從而導致作業系統與應用程式效能不良。

Avg. Disk sec/ Transfer 計數器會測量特定實體磁碟上每秒執行的磁碟傳輸要求 (I/O 要求封包,即 IRP) 的平均速率。這是對儲存子系統輸送量的一種測量。

原因

Avg. Disk sec/Transfer 效能計數器值可能偏高,原因在於來自作業系統或應用程式的磁碟傳輸要求突然暴增。

解決方式

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

請務必針對特定儲存硬體適當地設定此閾值。此閾值會因磁碟的基礎儲存子系統而異。例如,「磁碟」可能是單一磁針或大型磁碟陣列。您可以使用 MOM 覆寫功能來定義例外狀況的閾值,並可將其套用至特定電腦或整個電腦群組。

其他

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

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

1. 指定主機系統上執行的工作負載行為。您可以追蹤磁碟傳輸要求在一段時間內的工作負載需求。工作負載特性是效能分析與容量規劃中很重要的一部分。

2. 指定儲存子系統提供的尖峰與持續效能等級。工作負載可用於將儲存子系統 (在此情況下為指定的實體磁碟) 以人為或自然方式推向其限制。確定這些限制可為系統設計人員與系統管理員提供有用的設定資訊。

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

您還必須將 Avg. Disk sec/Transfer 計數器與其他傳輸要求特性 (例如,要求大小和隨機性/連續性) 以及寫入磁碟要求的對等計數器一併考量。

如果追蹤 Avg. Disk sec/Transfer 計數器一段時間,該計數器會隨著控制傳輸要求的工作負載強度而增加時,則輸送量不再增加且使用者的系統輸送量下降時,可合理地懷疑實體磁碟已飽和。

如需關於存放結構與驅動程式支援的詳細資訊,請參閱<儲存體 - 封存與驅動程式支援>網站,網址為 http://go.microsoft.com/fwlink/?LinkId=26156 (英文)。

Element properties:

TargetMicrosoft.Windows.Client.Vista.PhysicalDisk
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Instance NamePhysicalDisk
Counter NameAvg. Disk sec/Transfer
Frequency60
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeSystem.Performance.AverageThreshold
RemotableTrue
AccessibilityPublic
Alert Message
磁碟傳輸 (讀取和寫入) 延遲過長
Physical Disk\Avg. Disk sec/Transfer 效能計數器已超過閾值。以下的值已超過閾值: {0}。
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.Client.Vista.PhysicalDisk.AvgDiskSecPerTransfer" Accessibility="Public" Enabled="true" Target="Vista!Microsoft.Windows.Client.Vista.PhysicalDisk" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="SystemPerf!System.Performance.AverageThreshold" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Client.Vista.PhysicalDisk.AvgDiskSecPerTransfer.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Value$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="OverThreshold" MonitorTypeStateID="OverThreshold" HealthState="Error"/>
<OperationalState ID="UnderThreshold" MonitorTypeStateID="UnderThreshold" HealthState="Success"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName>Avg. Disk sec/Transfer</CounterName>
<ObjectName>PhysicalDisk</ObjectName>
<InstanceName>$Target/Property[Type="WindowsClient!Microsoft.Windows.Client.PhysicalDisk"]/PerfmonInstance$</InstanceName>
<Frequency>60</Frequency>
<Threshold>50</Threshold>
<NumSamples>5</NumSamples>
</Configuration>
</UnitMonitor>