MSSQL 2012: Recopilar nuevas compilaciones de SQL por segundo

Microsoft.SQLServer.2012.SQLRecompilesPerSecond (Rule)

Recopila el contador de rendimiento de nuevas compilaciones de SQL por segundo de Windows para cada instancia del motor de base de datos de SQL 2012.

Knowledge Base article:

Resumen

Número de recompilaciones de instrucciones por segundo. Cuenta el número de veces que se desencadenan las recompilaciones de instrucciones. En general, es conveniente que el número de recompilaciones sea bajo.

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.2012.DBEngine
CategoryPerformanceCollection
EnabledTrue
Instance Name$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/PerformanceCounterObject$:SQL Statistics
Counter NameSQL Re-Compilations/sec
Frequency900
Alert GenerateFalse
RemotableTrue

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource System.Performance.DataProvider Microsoft.SQLServer.SQLDefaultAccount
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.2012.SQLRecompilesPerSecond" Enabled="true" Target="SQL2012Core!Microsoft.SQLServer.2012.DBEngine">
<Category>PerformanceCollection</Category>
<DataSources>
<DataSource ID="DS" TypeID="SystemPerf!System.Performance.DataProvider" RunAs="SQL!Microsoft.SQLServer.SQLDefaultAccount">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName>SQL Re-Compilations/sec</CounterName>
<ObjectName>$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/PerformanceCounterObject$:SQL Statistics</ObjectName>
<InstanceName/>
<AllInstances>false</AllInstances>
<Frequency>900</Frequency>
</DataSource>
</DataSources>
<ConditionDetection ID="PerfMapper" TypeID="SystemPerf!System.Performance.DataGenericMapper">
<ObjectName>SQL DB Engine:SQL Statistics</ObjectName>
<CounterName>$Data/CounterName$</CounterName>
<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>