I've been working in monitoring and APM roles for 15 years and I've never been actually happy with a tool's solid performance until AppDynamics. These guys are ethical and hardworking. Their product actually does what the marketing says it does. Such a marked difference from other tools I've used in the past.
We've cut our MTTR by half just by deploying agents. It significantly reduced the amount of time we spend building synthetic monitors to the point we rarely have to build any monitors unless it's a vendor app or appliance we can't access to install an agent on.
* Autodiscovery of application topology, based on real user traffic
* Baselining of every single metric you throw at it
* Easy to use API
* Customizable extensions
* Great SaaS support, performance and uptime
* Responsive Support team
* Responsive Extension dev team
* Facilitates business, dev and ops communication
* Agents have low CPU overhead compared to other agent-based products we've tried
RUM, Synthetics, Mobile, Network and Browser Analytics make this a well rounded tool.
There is currently no automated agent management/upgrades for every agent type (currently the Universal Agent supports Java, expanding to .NET and machine agents in the future). So if you don't have a solid automation tool already in use, deploying agents can be time consuming.
The GUI can be overwhelming at first to a novice dev or ops support person, and the possible root causes of an issue don't bubble up to the first screen you see. We usually walk everyone through a few simple steps: Click here to see errors and exceptions, click here to see what is causing response time problems, click here to view the timeframe of a past issue, and click here to drill down into the root cause at the method level snapshot.