Follow your transactions with Transaction Flow

Your application landscape from the bird's eye view

For a quick and easy way to see what's going on in your application environment, use the Transaction Flow dashlet to see the following:

  • Aggregated view of all application components.
  • Application dependencies.
  • Communication paths between single tiers and key indicators to locate problems.

The Transaction Flow dashlet displays diagrams to help you understand the information flow. It's a great starting point for deeper analysis and drill-downs.

The Transaction Flow Dashlet
The Transaction Flow Dashlet

Goal of this tutorial

To explain how to use the Transaction Flow dashlet. It also discusses its two operation modes: Topology view and Transaction Response Time view.

Scenario

Use the easyTravel demo application to learn about various AppMon features and functions.

Requirements

If AppMon is running, you are ready to go. If you have configured business transactions, you can use these.

The topology view

When you open the Transaction Flow dashlet it starts in Topology visualization mode. This is a great way to transition to deeper analysis.

Know your application landscape

You may know where your application components run, and how they work together. You may understand the dependencies of components and services, and which protocols AppMon uses to communicate. But do you know what happens in real time? Do you know how many calls AppMon makes, and how Inter Tier Time affects your user's response time?

Use the Transaction Flow dashlet to understand a complex application environment. You can even skip the architecture, documentation, and source code analysis.

Transaction Flow Diagram of easyTravel
Transaction Flow Diagram of easyTravel

The demo setup includes the following servers:

  • Web server (Apache)
  • 3 third party content servers
  • B2B Web front end and payment back end (.Net)
  • Customer Web front end and business back end (Java)
  • Credit card authorization (C++)
  • MySQL and SQL Server CE DBs

Does everything run smoothly?

The Transaction Flow dashlet displays the flow of very large environments. It uses small circles or large boxes to represent tiers. The tier name tag size represents the node's performance / response time contribution. To find hotspots, look for nodes with larger text. The collapsed tier group always represents the worst health state of its members.

Transaction Flow with Hotspots and Collapsed Tier Groups
Transaction Flow with Hotspots and Collapsed Tier Groups

Look at the information in the header of the dashlet:

Note that the average Failed Transactions number is very high. What does this mean, and how does this affect the application? It may be due to network related problems, or poorly performing queues. Where do these failed transactions come from?

Focus on passing transactions

Inter Tier Time comes from transactions that pass through one particular tier. Some PurePaths take different routes. To analyze a specific tier, hover over the Agent and select Focus on Passing Transactions. This opens a new Transaction Flow for paths that pass through that node.

Focus on Passing Transactions
Focus on Passing Transactions

How many database calls?

Show Database Calls
Show Database Calls

From each node in the dashlet, you can do the following:

  • Hover over the DB Tier.
  • Hover over the tier that makes calls to the DB.
  • Go to the Visits dashlet from the Users node.
  • Go to the Database dashlet.

Hover over the different elements, or right-click, to explore the options.

The transaction response time view

The Transaction Response Time View visualization mode displays the following:

  • The response time of certain transactions passing through the application
  • Passing transactions and response time per node
  • Inter-Tier communication

Use this vital information to analyze the following and determine the root cause of poor end user experience:

  • Performance of single transaction types
  • How single components contribute to the overall transaction response time

Drill down from the Transaction Flow

Note that for the same type of requests, one frontend server performs poorly and the other performs fine. What is the root cause of this poor performance?

Drill down from the Transaction Flow to analyze this further. If you're in Operations, you might drill down from one Agent to a Host Performance dashboard. On this dashboard check to see if there is a problem with the machine that is running the frontend server. If you're interested in the number of database statements that AppMon generates for certain requests, drill down to the Database Dashlet. If the machine is performing well, drill down from the Agent Group to the Layer Breakdown Dashlet. Compare the application behavior on the two different hosts. Dive deeper and go straight to the PurePath Comparison Dashlet. You may discover bad source code.

Conclusion

The Transaction Flow dashlet provides a general overview and helps you isolate the source of resource bottlenecks or problems. You can also use it to examine arbitrary business transactions and pinpoint problems for single transaction types. With a few clicks, you can locate the root cause for these problems.
The Transaction Flow dashlet and associated components provide clear analysis, so you don't have to browse through tables to link and manually aggregate data.