.NET CLR Exceptions\# Exceptions Thrown/sec Performance Rule

Microsoft.Windows.InternetInformationServices.2008.WebServer.NumberOfDotNetExceptionsThrownPerSecond (Rule)

This counter displays the number of exceptions thrown per second. These include both .NET exceptions and unmanaged exceptions that get converted into .NET exceptions e.g. null pointer reference exception in unmanaged code would get re-thrown in managed code as a .NET System.NullReferenceException; this counter includes both handled and unhandled exceptions. Exceptions should only occur in rare situations and not in the normal control flow of the program; this counter was designed as an indicator of potential performance problems due to large (>100s) rate of exceptions thrown. This counter is not an average over time; it displays the difference between the values observed in the last two samples divided by the duration of the sample interval.

Element properties:

TargetMicrosoft.Windows.InternetInformationServices.2008.WebServer
CategoryPerformanceCollection
EnabledFalse
Instance Name.NET CLR Exceptions
Counter Name# of Exceps Thrown / sec
Frequency300
Alert GenerateFalse
RemotableTrue

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource System.Performance.OptimizedDataProvider Default
WriteToDB WriteAction Microsoft.SystemCenter.CollectPerformanceData Default
WriteToDW WriteAction Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData Default

Source Code:

<Rule ID="Microsoft.Windows.InternetInformationServices.2008.WebServer.NumberOfDotNetExceptionsThrownPerSecond" Enabled="false" Target="Microsoft.Windows.InternetInformationServices.2008.WebServer" ConfirmDelivery="false" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>PerformanceCollection</Category>
<DataSources>
<DataSource ID="DS" TypeID="SystemPerf!System.Performance.OptimizedDataProvider">
<ComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName># of Exceps Thrown / sec</CounterName>
<ObjectName>.NET CLR Exceptions</ObjectName>
<InstanceName>_Global_</InstanceName>
<AllInstances>false</AllInstances>
<Frequency>300</Frequency>
<Tolerance>5</Tolerance>
<ToleranceType>Percentage</ToleranceType>
<MaximumSampleSeparation>4</MaximumSampleSeparation>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="WriteToDB" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData"/>
<WriteAction ID="WriteToDW" TypeID="SCDW!Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData"/>
</WriteActions>
</Rule>