Recopila estadística de .NET/promedio Contador de rendimiento de tiempo de solicitud (s)
Esta regla recopila datos del contador de rendimiento de tiempo medio de ejecución de estadísticas .NET para transacciones.
El contador registra el tiempo medio (en segundos) que una transacción tarda en procesar una solicitud. El control del tiempo de cada solicitud comienza cuando la solicitud llega a la aplicación y se detiene cuando la solicitud se completa correctamente o se produce un error en algún punto del código. Se calcula el promedio de estos tiempos con respecto al número total de solicitudes supervisadas. Si este tiempo supera constantemente los 10.000 ms, indica que hay que investigar un cuello de botella.
Este contador sólo está disponible si la supervisión de rendimiento de aplicaciones está habilitada.
Las llamadas de base de datos excesivamente largas pueden deberse a un problema en el servidor o a la estructura y la complejidad de la consulta. Los tiempos largos de E/S de archivos pueden deberse a problemas en el servidor de archivos. Pueden producirse problemas de rendimiento de servicio web porque el servicio web o el servidor en el que reside se encuentran inactivos, o porque hay un problema en el código del servicio web. Los tiempos largos de ejecución interna de las aplicaciones pueden deberse a un código complejo o ineficiente.
Target | Microsoft.SystemCenter.Apm.Transaction |
Category | PerformanceCollection |
Enabled | True |
Instance Name | .NET Statistic |
Counter Name | Avg execution time |
Frequency | 300 |
Alert Generate | False |
Remotable | False |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DS | DataSource | System.Performance.DataProvider | Default |
Mapper | ConditionDetection | System.Performance.DataGenericMapper | Default |
WriteToDB | WriteAction | Microsoft.SystemCenter.CollectPerformanceData | Default |
WriteToDW | WriteAction | Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData | Default |
<Rule ID="Microsoft.SystemCenter.Apm.Transaction.CollectAvgDurationTimeSeconds" Enabled="true" Target="Microsoft.SystemCenter.Apm.Transaction" ConfirmDelivery="false" Remotable="false" Priority="Normal" DiscardLevel="100">
<Category>PerformanceCollection</Category>
<DataSources>
<DataSource ID="DS" TypeID="Performance!System.Performance.DataProvider">
<ComputerName>$Target/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName>Avg execution time</CounterName>
<ObjectName>.NET Statistic</ObjectName>
<InstanceName>$Target/Property[Type="Microsoft.SystemCenter.Apm.Transaction"]/CounterInstance$</InstanceName>
<AllInstances>false</AllInstances>
<Frequency>300</Frequency>
<ScaleBy>1000</ScaleBy>
</DataSource>
</DataSources>
<ConditionDetection TypeID="Performance!System.Performance.DataGenericMapper" ID="Mapper">
<ObjectName>.NET Statistic</ObjectName>
<CounterName>Avg execution time (seconds)</CounterName>
<InstanceName>$Target/Property[Type="Microsoft.SystemCenter.Apm.Transaction"]/CounterInstance$</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>