-
Notifications
You must be signed in to change notification settings - Fork 49
Flame Graph Report
Flame Graphs and Flame Chart reports are an ingenious and useful way to visualize many call graphs in single screen.
Flame Graphs and Flame Chart reports are produced when Input\Snapshots=True and Output.FlameGraphs=True.
Flame Graph report for Entities has the following file format Report\<Controller>\<Application>\<APP|TIER|NODE|BT>\Flame.<ControllerName>.<ApplicationName>.<EntityName>.<Start Date and Time>-<End Date and Time>.svg
For example, Report\demo2.appdynamics.com\ECommerce.41\APP\Flame.Application.demo2.appdynamics.com.ECommerce.41.2017123001-2017123003.svg
Flame Graph report for Snapshots has the following file format Report\<Controller>\<Application>\<SNAP>\<TierName>\<BTName>\Flame.Snapshot.<User Experience>.<Request ID>.<Start Date and Time>.svg
A Flame Graph visualizes a collection of stack traces (aka call stacks), shown as an adjacency diagram with an inverted icicle layout. Flame Graphs are commonly used to visualize CPU profiler output, where stack traces are collected using sampling.
Brendan Gregg’s website http://www.brendangregg.com/flamegraphs.html and his talk https://queue.acm.org/detail.cfm?id=2927301 are excellent in helping understand the concepts behind Flame Graphs. Couple other essential reads on using Flame Graphs are https://medium.com/netflix-techblog/java-in-flames-e763b3d32166 and https://medium.com/netflix-techblog/node-js-in-flames-ddd073803aa4.
Flame Graphs and Flame Charts (a type of Flame Graph with time dimension on the X axis) provide an excellent tool to understand the frequent execution paths your application is taking, visualize dependencies between various frameworks and identify performance problems.
For example, Report\demo2.appdynamics.com\ECommerce.41\SNAP\ECommerce-Se.108\Confirm Orde.593\Flame.Snapshot.NORMAL.20171230010623.ba3c2d7e-e927-4116-8e71-4c09ef263926.svg
Flame Graphs and Flame Charts reports for Application, Tiers, Nodes and Business Transactions are linked to from Detected Entity and Entity Metrics reports from FlameGraphLink and FlameGraphChart columns.
Flame Graph reports for Snapshots are linked to from the Snapshots report from FlameGraphLink column.
Flame Graphs and Flame Chart reports are SVG files that are best viewed in your favorite internet browser.
The vertical arrangement shows depth of stack calls, starting at the bottom. The topmost stack is on CPU.
Stack frame color-codes certain frameworks (Java, Sun, Oracle, Google, Amazon, Microsoft) with some colors, leaving default colors range from burnt orange at Stack depth 0 to yellow at maximum stack depth.
The horizontal arrangement is alphabetical.
Stack frame width is proportional to its percentage in samples. Wider -> more samples.
Stack frames with tiny width are filtered out.
The timing data for each frame is included. Methods with execution time higher than 50ms are highlighted with Red border, growing in thickness as the duration increases.
Hovering mouse over any block gives you its contents as tooltip.
The top line specifies which Entity you are looking at.
The red border around the frame indicates ranges of the average duration of the call (calculated by dividing the total time by number of samples):
Duration From | Duration To | Line thickness |
---|---|---|
0 | 100 | None |
100 | 250 | 1 |
250 | 500 | 2 |
500 | 1000 | 3 |
1000 | 5000 | 4 |
5000 | 10000 | 5 |
10000 | Infinity | 6 |
Clicking a single block trims the report to just that element:
You can continue to filter by clicking anywhere.
Use Reset Zoom to go back to full view.
Click Search or Ctrl-F to open search dialog, type your query (regex is supported):
Results are highlighted in purple. The Matched % is number of samples against total number of samples in all call stacks.
You can zoom in:
Use Reset Search to remove search highlights.
- Home
- Getting Started Walkthrough
- Run
-
Excel Reports
- Detected APM Entities
- Detected SIM Entities
- Detected DB Entities
- Detected WEB Entities
- Detected MOBILE Entities
- Detected BIQ Entities
- Entity Metrics
- Entity Metric Graphs
- Registered APM Metrics
- Entity Flowmaps
- Configuration
- Events and Health Rule Violations
- Entity Details
- Snapshots
- Snapshot Method Calls
- Individual Snapshot
- Users and Permissions
- Dashboards
- Health Check
- PowerBI Reports
- Tableau Reports
- Browser Reports