Today’s large businesses tend to have diverse digital footprints that encompass not just a multitude of websites, but several web-facing, and often business-critical, applications, too. For these scenarios, customers need a website monitoring service with not just cutting-edge features, but also a focus on reliability, analytics, and performance. In this website monitoring service roundup, that tool is AppDynamics, which begins at $3,300 per unit per year. This is why it gets our Editors’ Choice award for enterprise users. Competing products such as our Editors’ Choice winner for small to midsize businesses (SMBs), SmartBear AlertSite Pro, might provide better features in isolated categories, but none of them put it all together into a complete, enterprise-ready package like AppDynamics does.
The AppDynamics suite is available in two basic flavors: a free, Lite version that is geared toward a single application or a paid, Pro version. AppDynamics Pro, the model geared toward enterprises, is priced in terms of licensed units of its various product modules. There are nine different product modules, each sold as one or three-year subscriptions or perpetual licenses, and delivered as either cloud-based, Software-as-a-Service (SaaS), or via on-premises deployment. AppDynamics products can be grouped into End User Experience Monitoring (EUEM) including Web and mobile), Application Performance Monitoring (APM), Infrastructure, Database, and Application Analytics. Customers can license one or more modules depending on the applications and infrastructure they need to monitor.
The more runtimes a business customer’s code runs on, the more license units they’ll need as each runtime instance requires an agent to collect and report the monitoring data back to the AppDynamics controller. Runtime means the environment in which a website’s code is running. For example, AppDynamics offers runtime instances including Java, .NET, PHP, and Node.js, each of which would require a license unit for the corresponding agent.
AppDynamics products come with a volume discount of lower per-unit costs for larger purchases. For 1-10 units, the price is $3,300 per unit per year, and from 11-25 units that per-unit cost lowers to $2,970 (with additional discounts for a three-year subscription).
AppDynamics is expensive, there’s no question. Adding up multiple units can easily run its cost above the base pricing of Dynatrace UEM (the other truly enterprise-focused product in this roundup), and AppDynamics’ price only goes up from there. The difference is, with AppDynamics, a business is getting a complete website and infrastructure monitoring solution within a full-blown APM suite. That means the business users, developers, and IT staff within an enterprise are all working with the same data in the same place, tailored to their specific needs. It’s by far the most powerful service I reviewed, having the farthest-reaching monitoring (from the frontend of a website through its backend infrastructure) and comprehensive, business-focused analytics. It also has the reporting and alert structure to efficiently distribute that information to the right people in a large-scale enterprise business.
AppDynamics offers a particular solution it calls Unified Monitoring. For enterprise purposes, this means six different AppDynamics products rolled into one platform: APM, Browser Real User Monitoring (RUM), Mobile RUM, Synthetic Monitoring (currently in beta), Database Monitoring, and Server Monitoring. The goal is to provide visibility into the entire Web stack, front end and back end, to manage user experience (UX) across browsers and devices, with the infrastructure, root cause analysis, and tailored alerting to trace exactly where a performance problem occurs.
To test whether or not AppDynamics can actually do all that, I started in the main dashboard. The navigation bar across the top lists primary components in the relative order in which an enterprise user might need them (starting with Applications, followed by Databases, Infrastructure, Analytics, Dashboards & Reports, and Alert & Respond). Below the navigation bar is a clean tile layout, with boxes for Applications and Databases, each with green and red status bars indicating the current health—AppDynamics’ in-house performance measure of UX—of each website.
Unlike Dynatrace UEM, SmartBear AlertSite Pro, and Pingdom, AppDynamics does not use the Application Performance Index (Apdex) open standard for UX measurement and, in fact, some folks at AppDynamics are vocally opposed to the popular index. The other dashboard tiles include an Analytics box that gives a snapshot of user events and transactions, as well as a list of built-in and custom dashboards that are similar to the same tile on the Dynatrace UEM dashboard but with a more bare-bones design hewing closer to the SmartBear AlertSite Pro layout.
From purely a website monitoring perspective, business users will spend the most time in the Applications tab. I clicked one of the demo applications, an online retail site, and found myself looking at a detailed flow map diagraming the complete architecture of the application. Arrows ran from front-end Java and PHP nodes back through MySQL databases and servers, with interactive lines showing the flow of HTTP calls from one location to another when my mouse hovered over a line. The conceptual layout is similar to the way Ghostery MCM represents third-party tags and website components but with a more comprehensive focus on exactly the path a user transaction takes.
In the same Application Dashboard view, I tabbed over to Top Business Transactions which, in the context of the online retail site, highlighted the product pages that received the most HTTP calls, sorted by errors and page response time (with a green check mark to indicate their health). Two other interesting tabs in this dashboard were Transaction Snapshots and Transaction Score, which provide periodic performance snapshots of a website or application based on whether the UX was normal, slow, or filled with errors. The Transaction Score then transforms that long list of transactions into a bar graph showing transaction percentages, from “normal” all the way to “stall and error.” I found this was a quick and straightforward way to take that long list of transactions and whip it into a simple graph for users to visualize website performance.
Scrolling down the vertical navigation on the left-hand side of the Applications tab, I found both Web User and Mobile User Experience pages breaking down user traffic. Each provides the same kind of customizable tile dashboards found in Dynatrace UEM, with a selection of interactive maps breaking down user response time, page requests from different reasons, and pie charts of the different browsers, devices, and operating systems used. Dynatrace UEM provides a slightly wider array of design and charting options but the functionality is essentially equal. As far as from where the traffic is coming, AppDynamics offers both RUM and synthetic monitoring but, in contrast to synthetic-focused products like SmartBear AlertSite Pro, AppDynamics is primarily focused on RUM. The platform’s synthetic monitoring is used more for early error warnings, testing websites with jobs set at different intervals.
Inside the Business
Making my way from Applications into Databases and Infrastructure, AppDynamics gave the same level of easily understandable business visibility into the back end of websites as the front end. After clicking one of the databases listed, another interactive tile dashboard view came up with metrics such as load time, memory, and network and disk input/output (I/O), with live views and reports into queries, database calls, and sessions.
The Infrastructure tab listing servers worked the same way. These tabs all tie into AppDynamics’ root cause analysis capabilities, which made it easy for me to pull data from each level of the online retail application into a custom dashboard. This is where I was able to track one particular user transaction request with what AppDynamics calls its “tag-and-trace” feature, tracking it from the application flow map through the database calls, laid out as a line graph in one tile, to the server CPU process in the next. The back-end processes are also largely code-free because AppDynamics’ “smart code instrumentation” let me set up and monitor databases and servers without any manual configuration.
The back-end APM visibility and root cause analysis available through AppDynamics are some of the most appealing capabilities for enterprise developer and IT teams. But, for the average business user, it’s the platform’s prebuilt and custom dashboards tying into business transactions that will likely attract the most attention. In creating a custom dashboard, the AppDynamics experience was on par with SmartBear AlertSite Pro and Dynatrace UEM, laying out tiles as an adjustable grid or by using a more structured Absolute dashboard layout with clearly defined graph properties.
When adding components to the dashboard, I was able to represent different categories of metrics (e.g., overall application performance, business transaction performance, UX, etc.) as a graph, pie chart, or speed gauge graphic. I also had the option to add a status light, event list box for Health Rules, and other widgets. What made these custom dashboards of particular use from a business perspective is their ability to chart performance against revenue. AppDynamics sets performance baselines on which to measure end-to-end business transactions, and includes asynchronous support to present this real-time business data through the dashboards, without much latency. My testing also included data from a movie-ticketing website and, in a custom dashboard, the business can compare average response time against the volume of ticket purchases and the website’s total revenue. Custom dashboards can be created for business users at different levels of an enterprise, giving marketing, line-of-business (LOB) managers, and even executives within an organization a personalized dashboard that can monitor exactly the analytics they need, based on real-time, operational website data.
Alerting, Analytics, and Website Health
AppDynamics uses its custom health rules and policies (rather than Apdex metrics) to measure UX and business transaction performance. Because of this, setting up and using analytics and alerting was different in AppDynamics than it was in the other website monitoring services.
Acting as an enterprise user managing several different Web applications, I was able to set individual health rules for each website and even the individual databases and servers behind them. When creating a health rule, you decide exactly what components it will affect—which can be anything from overall application or transaction performance, to Web and mobile UX, to error rates, individual nodes, and endpoints.
I then chose a timeframe and interval for the rule, and the time between when a rule “violation” is detected and when the alert policy kicks in. I also set specific parameters for when a rule is considered in Warning Condition and in Critical Condition. Setting up alerts in this way gave me a more granular sense of control over what exactly an enterprise defines as acceptable performance or UX standards in each moving part of a website rather than accepting Apdex measures (despite how effectively those metrics were integrated into some of the other website monitoring services).
From there, I configured specific alert policies for all or for specific Health Rule violations such as executing a specific action (e.g., automatically restarting an application) and designating to whom to send email or text alerts. AppDynamics also offers email digests which send summaries of how specific health rules I set are faring over a given number of hours. The email digests were straightforward, providing a bulleted list of errors without much more context. I could have used some more detail about the cause of a particular health rule error in the body of the email (such as a preliminary root cause analysis) but, for getting the bare performance essentials across, the alerting got the job done.
A couple of other analytics capabilities worth noting here are Business Impact Analytics, which is a report that identifies failed website transactions and what specific customers those failures impacted, as well as the subsequent Customer Win Back Analysis report, which breaks down that user’s experience into specific timestamped events to help a business’s marketing team run a win-back campaign.
Best of the Bunch
AppDynamics is designed for extremely large environments. For small businesses managing maybe a single website and a mobile application, it’s like using a very expensive rocket ship to drive down the block. But, if you’re an enterprise organization managing multiple interconnected applications and websites, AppDynamics is worth the money. Of all the website monitoring services I reviewed in this roundup, AppDynamics offered the most complete package of web and mobile monitoring, back-end analytics, and reporting and alerts—all distilled in customized and easily understandable formats for every level of an organization. It was an easy pick as our Editors’ Choice for enterprises.