Which is the best APM tool?

In the Application Performance Management business tools play a crucial role. Few years back we had a popular tool named Wily, APM was not a popular term at that time and it was considered more of application deep dive tool and used to expose the bottlenecks caused by Java based applications. Now we have a bunch of APM tools to chose from. Some of the most popular APM tools today are Dynatrace, Appdynamics, HP BSM, New Relic, BMC APM Tools. Appdynamics and New Relic are created by former employees of Wily. Wily is almost forgotten now. Some people consider Splunk as an APM tool but it is not. It is more of a log analysis tool that can handle lot of data, analyze it and present it in graphical way as required.

Before we discuss the pros and cons of popular APM tools, from my experience of using the available APM tools in market, I can confidently say that none of these tools is a complete APM tool. All are in the process of evolution. Clients mostly rely on multiple tools. In one of the recent projects we were using Dynatrace, client brought in Splunk for log analysis, although Dynatrace supports Log analysis but it is still in development phase, further the log analysis capabilities provided by Dynatrace are not as robust as that of Splunk. In one more instance where we were using HP BSM, we found out that HP BSM does not support PHP based applications, we had to bring in Dynatrace for monitoring of PHP application. HP is still in the process of developing a product that could provide monitoring of PHP based applications.

Now coming back to the question of best APM tool, Dynatrace has an edge over other tools available as of today. It supports far more technologies and has capabilities to handle big data. Real User Monitoring product of Dynatrace can capture, analyze and store all your real user transactions whereas most of other APM tools would focus on the slowest transactions and does not have ability to store all the real user transactions.

The second best APM tool would be HP BSM, it supports a lot of technologies and has some very good agentless monitoring capabilities. I could have given second spot to Appdynamics but in one of the projects where we were using it, we found out that it was reporting wrong information, it was not corrected untill we restarted the Appdynamics Controller machine.

HP is also in the process of reinventing its tools, it is recently marketing for tool by name AppPulse which would let you monitor infrastructure, applications, logs and warn you of any discrepancy in normal behavior or usage as soon as it discovers. One issue with HP is that it has too many tools and many of these tools overlap in capabilities. Further HP is adding more new tools rather than significantly improving its existing tools that have many existing customers.

BMC also has good APM tools but it is not as popular as Dynatrace, Appdynamics or HP tools. Further the GUI of BMC tools is not that impressive. The BMC tool that impressed me the most was BMC TCO – Truesight Capacity Optimizer. It is a unique tool that can track capacity of your infrastructure using historical data analysis. It provides a number of algorithms for capacity planning. It has the ability to relate your business goals with the capacity of your infrastructure e.g. it can relate the usage of infrastructure capacity with number of orders placed in day, it can also project for you the infrastructure requirements for a projected growth of 50% increase in number of orders.

New Relic is rather a new player in the APM tools business. I got to use New Relic in one of the projects. New Relic has products for synthetic monitoring and real user monitoring. The real user monitoring capability of New Relic is more like Google Analytics. Overall tools like Dynatrace and HP have more abilities than New Relic.