每次逻辑磁盘传输的平均时间(秒)

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

监视性能计数器 LogicalDisk\Avg Disk Sec Per Transfer

Knowledge Base article:

摘要

Avg.Disk sec/Transfer (LogicalDisk\Avg.Disk sec/Transfer) 超出了阈值。依赖于此逻辑磁盘的应用程序的性能可能会受到负面影响,因为磁盘传送读取和写入请求所需的时间非常长。

Avg.Disk sec/Transfer 计数器指明了特定逻辑磁盘平均读取和写入数据的速度。

Avg.Disk sec/ Transfer 计数器由读写磁盘传输请求组成。要查看读写传输请求的最近磁盘平均速度,可使用以下视图:

Logical Disk\Avg.Disk Sec/Reads 性能视图

Logical Disk\Avg.Disk Sec/Writes 性能视图

原因

Avg.Disk sec/Transfer 性能计数器值高可能是操作系统或应用程序的磁盘传输请求突然增加所致。

解决方法

若要增加此逻辑磁盘的可用存储子系统吞吐量,请执行以下一项或多项操作:

确保为你的特定存储硬件适当地设置此阈值。阈值将会因磁盘的基本存储子系统而有所不同。例如,“磁盘”可能是单轴或大容量磁盘阵列。可以使用 MOM 替代值来定义例外阈值,该阈值可以应用于特定计算机或整个计算机组。

其他

Avg.Disk sec/Transfer 计数器对收集吞吐量数据很有用。如果平均时间足够长,你可以分析数组响应特定负荷(队列、请求大小等等)的直方图。如果可能,你应该分别观察工作负荷。

你可以使用吞吐量衡量标准确定:

但是,如果没有全面了解逻辑磁盘的基本存储子系统(例如,了解它是单轴还是大容量磁盘阵列),可能很难提供一个适合所有阈值的最佳大小。

你还必须将 Avg.Disk sec/Transfer 计数器与其他传输请求特性(例如,请求大小和随机性/有序性)和写入磁盘请求的等效计数器一起进行考虑。

如果一段时间内对 Avg.Disk sec/Transfers 计数器进行了跟踪,发现它随驱动传输请求的工作负荷强度增加,但吞吐量没有增加并且用户感觉到系统的吞吐量下降,那么怀疑逻辑磁盘已经饱和是合乎情理的。

有关存储体系结构和驱动程序支持的详细信息,请参阅“存储 - 体系结构和驱动程序支持”网站 http://go.microsoft.com/fwlink/?LinkId=26156

Element properties:

TargetMicrosoft.Windows.Server.10.0.LogicalDisk
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Instance NameLogicalDisk
Counter NameAvg. Disk sec/Transfer
Frequency60
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeSystem.Performance.ConsecutiveSamplesThreshold
RemotableTrue
AccessibilityPublic
Alert Message
逻辑磁盘传输(读取和写入)延迟太高
已超过 Logical Disk\Avg.Disk sec/Transfer 性能计数器的阈值。
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.Server.10.0.LogicalDisk.AvgDiskSecPerTransfer" 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.AvgDiskSecPerTransfer.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/Transfer</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>