MSSQL 2008: recopilar el tiempo promedio de espera (ms) del motor de base de datos

Microsoft.SQLServer.2008.DBEngine.AverageWaitTime.Collection (Rule)

Regla de recopilación de rendimiento de tiempo promedio de espera del motor de base de datos de SQL 2008

Knowledge Base article:

Resumen

Tiempo promedio de espera (ms) para el motor de base de datos de SQL 2008

Promedio de tiempo de espera (en milisegundos) para cada solicitud de bloqueo que esperó. Este contador, basado en el contador del motor de base de datos, tiene valores idénticos para todas las bases de datos de la instancia de SQL.

Es el tiempo promedio de espera en milisegundos para adquirir un bloqueo. Cuanto menor sea el valor, mejor. Si el valor supera 500, se puede estar produciendo un bloqueo. Probablemente puede encontrar la causa de bloqueo y corregirla.

Parámetros invalidables

Nombre

Descripción

Valor predeterminado

Habilitado

Habilita o deshabilita el flujo de trabajo.

Frecuencia (segundos)

Intervalo de tiempo periódico en segundos en el que se ejecuta el flujo de trabajo.

900

Element properties:

TargetMicrosoft.SQLServer.2008.DBEngine
CategoryPerformanceCollection
EnabledTrue
Instance Name$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/PerformanceCounterObject$:Locks
Counter NameAverage Wait Time (ms)
Frequency900
Alert GenerateFalse
RemotableTrue

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource System.Performance.DataProvider Microsoft.SQLServer.SQLProbeAccount
PerfMapper ConditionDetection System.Performance.DataGenericMapper Default
WriteToDB WriteAction Microsoft.SystemCenter.CollectPerformanceData Default
WriteToDW WriteAction Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData Default

Source Code:

<Rule ID="Microsoft.SQLServer.2008.DBEngine.AverageWaitTime.Collection" Enabled="true" Target="SQL2008Core!Microsoft.SQLServer.2008.DBEngine" ConfirmDelivery="false" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>PerformanceCollection</Category>
<DataSources>
<DataSource ID="DS" TypeID="SystemPerf!System.Performance.DataProvider" RunAs="SQL!Microsoft.SQLServer.SQLProbeAccount">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName>Average Wait Time (ms)</CounterName>
<ObjectName>$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/PerformanceCounterObject$:Locks</ObjectName>
<InstanceName>_Total</InstanceName>
<AllInstances>false</AllInstances>
<Frequency>900</Frequency>
</DataSource>
</DataSources>
<ConditionDetection ID="PerfMapper" TypeID="SystemPerf!System.Performance.DataGenericMapper">
<ObjectName>SQL DB Engine:Locks</ObjectName>
<CounterName>$Data/CounterName$</CounterName>
<InstanceName>$Data/InstanceName$</InstanceName>
<Value>$Data/Value$</Value>
</ConditionDetection>
<WriteActions>
<WriteAction ID="WriteToDB" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData"/>
<WriteAction ID="WriteToDW" TypeID="SCDW!Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData"/>
</WriteActions>
</Rule>