Bush planes, SEALs, family dinners and application performance management

In the Canadian wilderness, bush pilots always circle the runway before they land. Elite military units always gather extensive intelligence before executing on a mission. I always ask “who’s mad at whom?” before big family dinners. What do we all have in common? We want to know where the problems spots are before we dive in deep and commit.

The smart application performance management pros I know follow the same maxim. They resist the desire to jump in with the deep dive component monitoring tool first, and instead step back and survey the landscape with transaction profiling tools.

There’s some great upcoming research to help you map use cases to APM tools, but I’m going to simplify it down to one question:

Do you know which component is responsible for the problem?

Yes: Great, use the appropriate deep dive component monitoring tool to figure out why it’s happening.

No: Then use your transaction profiling tool to figure out which one is responsible.

Sounds simple, right? It actually is. The problem comes more from vendor’s attempts to blur the boundaries of what a deep dive tool can do. Gartner’s Will Cappelli has a great note on the blurring of the APM landscape (Gartner client access only). If you focus on what you need to do, the choice of tools is easy.

Most deep dive application performance management (APM) tools can trace transactions within a container (e.g. an application server). They can also tell you how the next component in line is responding. But you have to wade through a lot of data to get there, because they are designed to tell you why a problem is happening, not where it’s happening. Plus, once you get one step removed from the application server you’ve instrumented (not uncommon in today’s distributed applications), the tools are blind.

Purpose-specific transaction profiling tools collect data from across a distributed application and apply powerful analytics to trace transactions end-to-end. They get you to the source of a problem fast, because they are designed to tell you where a problem is happening, not why it’s happening. Regardless of where your breakdown is, they will find it.

Remember our simple question from before “Do you know which component is responsible for the problem?” A word of caution: DON’T GUESS! Circle the runway with your transaction profiling tool and get it right the first time.