Viewing the application flow of a trace
The Application Flow tab is selected by default when the Trace Details window opens.
Example of Trace Details page, Application Flow tab
Click image to enlarge.
Information on the Application Flow tab contains the following sections:
- Net time spent on notes
- Application Flow diagram
- Request comparisons
- Application server CPU details
- Application server memory details
To see node details, click a node in the Application Flow diagram.
Net time spent on nodes
A breakdown of the nodes enables you to view the relative amount of time spent on each node in the transaction, not including its child nodes.
The graph of nodes includes only the nodes that were used in the transaction. You can perform the following actions:
- Hover over a section of the chart to see time information.
- Click a section of the chart to view details specific to that node.
Application Flow diagram
The Application Flow diagram of a trace provides a logical map of the requests. Requests are displayed as a node in the application flow. The technology used in the specific flow between nodes is displayed on the arrow. Above each node is the cumulative time, in milliseconds, spent on the node, including its child nodes.
The Application Flow diagram can present the following kinds of nodes:
Node | Description |
---|---|
Client | Furthest to the left of the diagram, the client node represents the start of the end-user's browser request. Select the client node to see information in the Details pane that is extracted from the HTTP request. |
Server | The server node includes different kinds of servers. Select a server node to see specific details about that node: |
Database | The database node records the number of requests, the time to process requests, errors on the request, and the calling node or nodes |
Messaging queue | The messaging queue node records the time to process messages. |
Not-recorded node | Node for which no information was recorded. |
Unknown node | Custom node with a configuration problem. |
Request comparisons
Request comparisons enable you to pinpoint tiers that might be the root of application issues.
The graph of request comparisons includes the requests used in the specific trace and compares them with the average data previously collected for this type of request. The average data is calculated from the previous hour, day, and week's data, providing you with the statistics to help determine which tiers are causing the transaction to perform poorly. This aggregation includes only requests that did not result in a latency issue or an error.
If a tier performs poorly in comparison to average values, tiers would need further analyzing. To further analyze a tier, review the specific code flows in the Code Level tab.
Application server CPU and memory details
Details about the CPU and memory consumption of applications servers can help you pinpoint server components that might be the root of application issues. The graphs compare the metrics from the application server used in the specific transaction, and compares them with the average data previously collected for this type of transaction. The average data is calculated from the previous hour, day, and week's data, providing you with the statistics to determine which servers are causing the transaction to perform poorly.
Node details
Click a node to see specific details. If the node is an application server, then details (server name, type, address, port, platform, and operating system) are displayed in a tool tip.
The Details pane displays the following information for a selected server:
- Number of requests, latency violations, and error violations
- Relative time spent on each technology involved in requests
- Application server performance metrics, including the percent of used CPU, the amount of memory used, number of threads involved, and the number of deadlock situations
In the Details pane, some data is linked to more information:
- Click the initiating request, method, or exception to see that specific line in the Code Level tab.
- Click the name of a calling node to see the details of that node
Related topic