Fully featured low overhead profiler for Java EE and Java SE platforms.
Monitoring and profiling solution for Gradle, Maven, Ant, JUnit and TestNG.
Easy to use performance and memory profiler for .NET framework.

Exception telemetry

"Exceptions" telemetry shows exceptions which were thrown in the profiled application.

Exceptions may be grouped by their exception class or by thread in which they occurred. Selecting an exception in the upper table allows viewing the exception stack traces.

Checkbox "Show exceptions thrown and caught inside filtered methods" enables to filter out exceptions which have been thrown and caught in methods of library classes. By default, the checkbox is unselected, as such kind of exceptions are usually of no interest when profiling your application.

You can clear recorded exceptions with the help of corresponding toolbar button:

You can compare exception statistics of two snapshots with the help of File | Compare Snapshot with....

Disabling/enabling exception telemetry

Exception telemetry helps discovering performance issues and logic errors. In most cases, there is no significant overhead of collecting this information.

However, it makes sense to disable it in production Java EE servers in order to ensure minimum profiling overhead.

Whether the exception telemetry is enabled by default depends on the JVM and can be adjusted with the following startup options:

  • exceptions=on enables exception events in the JVM and immediately starts recording the exception telemetry. This is the default mode on Sun/Oracle HotSpot, OpenJDK, JRockit (i.e. non-IBM JVMs).
  • exceptions=off enables exception events in the JVM but does not immediately start recording the exception telemetry that can instead be recorded later in runtime.
  • exceptions=disable fully disables exception events in the JVM to totally eliminate corresponding overhead. This is the default mode on IBM JVMs because the overhead is significant.

When you are connected to the profiled application, use corresponding toolbar button to enable/disable the telemetry.