Viewing the application flow of a trace


The Application Flow tab is selected by default when the Trace Details window opens. The following image is an example of an Application Flow.

Example of Trace Details window, Application Flow tab

Click image to enlarge.
appflow_numbered_sections1.png

The Application Flow tab provides the following information:

  1. Net time spent on nodes
  2. Application Flow diagram
  3. Requests comparison
  4. Application server CPU details
  5. 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 displays the following types of nodes:

Node

Description

Client

Shown in the left side 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.
ico_client.png

Server

The server node includes different kinds of servers. Select a server node to see specific details about that node:
ico_web_node.png Web server node

ico_ws.png Application server (web service) node

ico_business_node.png Business node

ico_messaging_node.png Messaging service

ico_custom_node.png Custom node. Custom-defined technology, such as for middleware, as defined with the help of BMC Support.

Database

The database node records the number of requests, the time to process requests, errors on the request, and the calling node or nodes.
ico_db.png

Messaging queue

The messaging queue node records the time to process messages.
ico_messaging_node.png

Not-recorded node

The not-recorded node represents a node for which no information was recorded.
ico_not_recorded_node.png

Unknown node

An unknown node is a custom node with a configuration problem.
ico_unknown_node.png

Requests comparison

Requests comparison enables 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, the tier needs further analysis. To further analyze a tier, review the specific code flows in the Code Level tab.

Note

The data used to compile the average tier statistics is based only on transactions that meet the defined thresholds in the agent policy file.

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, 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, details (server name, type, address, port, platform, and operating system) are displayed in a tooltip.

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.
    appflow_request_method.png
  • Click the name of a calling node to see the details of that node
    appflow_caller_link.png

Related topic

Viewing-a-trace-at-the-code-level

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*