Managing the performance of an application is easier said than done. With many avenues to explore and many trends to investigate, application performance management can go from simple to complex in a hurry. The same can be said about APM software. There are many APM software options, all of which perform a variety of functions at different levels of success, making the question of which to procure less of question and more of a riddle.
This article removes some of that mystery for APM products by covering a number of different APM tools, the features they offer and how they fit in certain business scenarios.
Business size and focus can determine which APM tool to buy
Some tools are built for an enterprise with a variety of environments and others for smaller or newer companies that have a simpler setup. If you have a simple environment that consists of, say, a couple of servers and databases, an APM tool like Sensu might work perfectly. This open source tool lacks some of the feature set, security options and scalability that others offer, but it is perfectly suited to a simple product environment.
Other tools -- AppDynamics and BMC TrueSight -- are better for larger and more complicated product environments. These two in particular can monitor hardware and software across many different tiers. For example, a product like Facebook has many virtualized servers, databases that are constantly being replicated and backed up, and lots of different services to support users. AppDynamics, TrueSight and other APM software with a large-scale focus can quickly map the environment and help discover all the pieces that make the product run.
Somewhere in the middle, there are APM products like FogLight, AppPulse and AppNeta that allow organizations to purchase only the parts of the product that they would need. These modular products can be purchased based on the functionality needed at the time. There are two benefits here -- one is that companies get only the functionality they want and pay for, which reduces bloat. The second benefit is that they can get a product specialized for their environment. For example, a company that is heavily interested in transactional data might need a different product than a company that only had mobile products or another company that uses cloud servers only.
Data collection and reporting key features in APM software
Bloated software with more features than someone could ever use can be a nuisance. It is confusing to learn and also represents something you paid for and didn't really need. But if that tool is missing the one or two pieces of functionality an organization really needs, it is completely useless. No matter what other functions vendors offer with their APM tools, data collection and reporting are the must-have functions in any APM software, and every product does it a little differently. Products like FogLight and TrueSight specialize in end-user experience monitoring by collecting information about every transaction, such as latency on the pages those transactions happened. Dynatrace and AppResponse, found in Riverbed's SteelCentral suite, can collect every piece of transactional data. To display this data, Dynatrace and NewRelic offer a single pane of glass approach, an approach where data is collected from all over and displayed with one dashboard. The two APM tools provide sets of preconfigured dashboards with data points that many people find useful.
Getting up and running with monitoring products is challenging sometimes. There is configuration, and sometimes changes to your software, that have to happen before any data can be collected. Products like AppDynamics, Dynatrace and SAP Extended Diagnostics claim zero, or very little, configuration is needed before you can start collecting data. These products use mapping technology to discover the different dependencies required to make your product go. If you have 3 virtual machines pointed to a database that is backed up to a data warehouse where you are getting analytics from, these products will find all of those and create a map of how the systems connect.
If product security and restricting who has access to what report data is important, AppDynamics and FogLight both offer a role-based security system. With this, companies can create user groups to manage and control data access. This is important for people in regulated environments like healthcare.
What platforms does the APM software support?
Ten years ago, software lived on a few servers and a few databases and that was that. Things are different now; there are virtual machines, the cloud, mobile and even platform as a service. For APM tools, there are two questions to ask: "Will it work with the language your software is written in?" and "Will it run on your servers?”
Windows and Linux are the most popular environments, so it's no surprise that most APM products mentioned in this article will work in these environments. Sensu has a more limited platform of Debian, Ubuntu, or CentOS while FogLight will run on most anything, including RHEL, Solaris, AIX and HP-UX.
On the programming technology side, Java and .NET are fairly standard. Most any APM software will support these languages. Some products go further -- Dynatrace supports PHP and AppPulse supports Python.
Sensu is open source and free. While that means companies avoid upfront costs, there are some other considerations to think about. Open source usually means there is no support department. When problems arise, rather than writing up a support ticket, a company would have to talk with the developer or other users on a community forum to resolve the issue. Also, the rate of bug fixes and new versions might be intermittent.
For most every APM tool, some vendors offer free trials or free versions, but all also have a subscription plan. While this means companies would pay monthly fees for the software, they also receive the benefit of a support department and knowing that the APM software will be actively developed.
Finding the right APM tool, one where the right feature set overlaps with the right price and the right technology, can be challenging. When a company understands its own needs and investigates the APM tool, the answer to the riddle is more easily found.
When it comes to capacity planning, here are some fine APM tools.
Finding more of the right APM data helps continuously improve the process.
Mobile APM and SaaS are like two peas in a pod.