Fully featured low overhead profiler for Java EE and Java SE platforms.
Easy-to-use performance and memory .NET profiler for Windows, Linux and macOS.
Secure and easy profiling in cloud, containers and clustered environments.
Performance monitoring and profiling of Jenkins, Bamboo, TeamCity, Gradle, Maven, Ant and JUnit.

Exception profiling

Goals of exception profiling

Exceptions in Java can be performance killers, especially when thrown and caught frequently. YourKit Java Profiler captures data on exceptions that have been thrown and provides stack traces and other contextual information. This data allows you to identify exception-related bottlenecks, which can be especially useful for debugging or optimizing error-prone areas of your application.

Exception profiling helps to discover 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 servers in order to ensure minimum profiling overhead.

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

Controlling exception profiling

Profiler UI

When the profiler is connected to the profiled application, the toolbar contains the following exception profiling controls:

Toolbar Button Description
Start exception profiling button Stop exception profiling button Start/Stop exception profiling.
Clear exception profiling results button Clear exception profiling results.

When exception profiling is started, previous results are cleared automatically.

Agent startup options

Exception profiling is enabled by default, but this can be adjusted with the following agent startup options:

  • exceptions=on enables exception events in the JVM and immediately starts the exception profiling. This is the default mode.
  • exceptions=off enables exception events in the JVM but does not immediately start the exception profiling that can instead be started later in runtime.
  • exceptions=disable fully disables exception events in the JVM to totally eliminate corresponding overhead.

HTTP API

For users requiring remote control or automation within their profiling workflows, YourKit Java Profiler offers control over the exception profiling through HTTP API endpoints. The documentation outlines startExceptionProfiling, stopExceptionProfiling and resetExceptionProfiling methods available for this purpose.

Java API

The YourKit Java Profiler also provides a Java API for deep integration with Java applications. The com.yourkit.api.controller.v2.Controller includes methods for starting, stopping, and resetting the exception profiling, similar to the toolbar buttons.

Triggers

Profiler built-in triggers allow to start exception profiling, by timer, on entering particular method, or by other conditions.

Exceptions tab

Exception profiling results can be analyzed from different perspectives:

YourKit uses cookies and other tracking technologies to improve your browsing experience on our website, to show you personalized content, to analyze our website traffic, and to understand where our visitors are coming from.

By browsing our website, you consent to our use of cookies and other tracking technologies in accordance with the Privacy Policy.