Overview
Automated Analysis automatically detects performance issues in your applications using Continuous Profiler data and provides actionable insights for resolution. When an issue is detected, Automated Analysis provides:
- A high-level summary explaining the issue and why it matters
- Contextual insights from profiling data (for example, affected methods, packages, or processes)
- Recommended next steps to help you resolve the issue
This reduces the profiling expertise needed to identify and resolve performance issues in your applications that might otherwise go unnoticed.
Explore insights
Access Automated Analysis from the Profile explorer. Insights are displayed:
In the Top Insights banner at the top of the page when you’re scoped to a specific service
In the Insights column within the service list
Within a flame graph view
Within a timeline view
Click an insight to see a high-level summary that explains the issue, contextual insights from profiling data, and recommended next steps.
Supported insights
Automated Analysis supports finding the following insights:
Name | Severity | Description |
---|
Duplicated Flags | Info | Triggers if duplicate flags were provided to the runtime (for example, -Xmx2g -Xmx5g ). This is a problem as it may lead to changes not having the expected effect. |
Explicit GC | Info | Triggers if there are System.gc() calls. |
GC Pause Peak Duration | Info | Triggers if at least one GC pause took more than 1 second. |
GC Setup | Info | Triggers when one of the following is detected - serial GC used on a multi-core machine, parallel GC on a single-core machine, more GC threads were configured than available cores, or a parallel GC was configured to run in 1 thread |
Head of line blocking | Info | Triggers if a queue event gets stuck behind the given activity. |
Primitive Value Boxing | Info | Triggers if more than 5% of CPU time was spent doing primitive<>object value conversions. |
Deadlocked Threads Detected | Warn | Triggers if max number of deadlocked threads over query context is bigger than 0. |
GC Pauses | Warn | Triggers if more than 10% of time was spent in GC pauses. |
Options | Warn | Triggers if undocumented, deprecated or non-recommended option flags were detected. |
Stackdepth Setting | Warn | Triggers if events were found with truncated stacktraces which may make it hard to understand profiling data. |
Thrown Exceptions | Warn | Triggers when the rate of thrown (caught and uncaught) exceptions per minute goes above a threshold (defaults to 10K) |
VMOperation Peak Duration | Warn | Triggers if a blocking VM operation (or combination of operations close in time) takes more than 2 seconds. Reports details about the operation with the highest duration. |
Further reading
Additional helpful documentation, links, and articles: