Collect .NET CSM Statistic/\% of Performance violations/sec performance counter
The instance state becomes unhealthy if the rate of client-side performance events per defined time period exceeds the monitor threshold.
Transaction client-side performance alerts are generated when the rate of performance events exceeds the configured monitor threshold.
This counter reports the number of times a webpage or Ajax call in the monitored application exceeded the acceptable load time per second.
Excessively long network request times might be due to an unbalanced network.
Long server processing might be due to complex or inefficient source code.
Page loading time performance issues might occur because of either large page size or a large number of java scripts.
Long Window.OnLoad performance issues might result from long JavaScript handlers execution.
A typical long page load call can be caused by an unbalanced network, long server processing time, long page loading time, or Window.OnLoad time.
Target | Microsoft.SystemCenter.Apm.CsmTransaction | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | Custom | ||
Enabled | False | ||
Instance Name | .NET CSM Statistic | ||
Counter Name | \% of Performance violations/sec | ||
Alert Generate | True | ||
Alert Severity | MatchMonitorHealth | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | System.Performance.ConsecutiveSamplesThreshold | ||
Remotable | False | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SystemCenter.Apm.CsmTransaction.PerformanceRateMonitor" Accessibility="Public" Enabled="false" Target="Microsoft.SystemCenter.Apm.CsmTransaction" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="false" Priority="Normal" TypeID="Performance!System.Performance.ConsecutiveSamplesThreshold" ConfirmDelivery="false">
<Category>Custom</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.Apm.CsmTransaction.PerformanceRateMonitor.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="AL!Microsoft.SystemCenter.Apm.TransactionBase"]/PerformanceRateMonitorThreshold$</AlertParameter1>
<AlertParameter2>$Data/Context/SampleValue$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Success" MonitorTypeStateID="ConditionFalse" HealthState="Success"/>
<OperationalState ID="Warning" MonitorTypeStateID="ConditionTrue" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName>% of Performance violations/sec</CounterName>
<ObjectName>.NET CSM Statistic</ObjectName>
<InstanceName>$Target/Property[Type="Microsoft.SystemCenter.Apm.CsmTransaction"]/CounterInstance$</InstanceName>
<AllInstances>false</AllInstances>
<Frequency>$Target/Property[Type="AL!Microsoft.SystemCenter.Apm.TransactionBase"]/PerformanceRateMonitorInterval$</Frequency>
<Threshold>$Target/Property[Type="AL!Microsoft.SystemCenter.Apm.TransactionBase"]/PerformanceRateMonitorThreshold$</Threshold>
<Direction>greater</Direction>
<NumSamples>3</NumSamples>
</Configuration>
</UnitMonitor>