Overview: AWS Application Performance Monitoring and Management
The AWS Marketplace offers a large variety of commercial and open source offerings to augment application performance management within the AWS ecosystem. Sumo Logic’s AWS Marketscape looks at the pros and cons of the most common app performance management tools and solutions from Amazon Web Services.
Whether hosted in the cloud, on-premise, or in a hybrid environment, modern software applications commonly consist of hundreds of thousands of lines of code and routinely invoke numerous technologies to carry out their responsibilities.
For example, an application may process a single transaction that flows from a mobile device to a web server to an application server to a message queue to a database and finally to one or more external APIs and Web services—and then repeat the journey back to the mobile device!
Meanwhile, user expectations have never been higher for responsiveness, uptime, connectivity, and support. To keep up with these demands, developers and administrators must find a reliable way to untangle the inherent complexity present in their applications and pinpoint the root cause—ideally to the specific line of code—to solve quality and performance issues.
AWS Performance Management Solutions and Tools
At present, Amazon doesn’t offer a specialized product directly aimed at this type of application performance monitoring and troubleshooting. However, administrators should be aware of AWS CloudWatch. CloudWatch is an infrastructure monitoring solution that’s integrated with the entire AWS platform, making it possible for all of Amazon’s cloud computing technologies to register their own specific operational details.
By furnishing a single source of truth regarding infrastructure activity—made visible via user-friendly dashboards and analytics—it may be able to provide insights into performance problems, particularly when paired with a dedicated application performance management (APM) product.
AWS APM Pricing
Amazon supplies a free, basic AWS CloudWatch solution. For customers wishing to gather additional information and trigger more events, Amazon offers paid AWS CloudWatch services with pricing linked to the number of active dashboards, alarms, custom metrics, instances, API requests, and log transfer volume. However, this won’t be sufficient for application performance monitoring: a specialized APM solution will need to be part of the mix.
Limitations of AWS App Performance Management
Even for applications developed and deployed purely within the AWS platform, AWS CloudWatch only contributes the raw materials necessary to diagnose and address infrastructure issues. Proper application performance monitoring requires goes much further by tracing transactions through all layers of the stack and conducting deep code analysis.
Given that the application logic in today’s software solutions interacts with so many moving parts—often from different providers—it’s no wonder that several major vendors have gone further and developed highly specialized APM products.
Third Party Performance Monitoring Solutions
These products—offered in on-premise, SaaS, and self-hosted cloud configurations—show a holistic view of the entire application stack, including database engines, application servers, and Web servers; AWS is treated as just one element in the bigger picture. They are capable of tracking individual business transactions—in real time—as they flow through all of the assets that make up the application, regardless of where they may reside.
What makes them so compelling is that they’re tightly integrated with the entire application stack, yet generally require no code changes or other alterations to function even in the most challenging environments. (One exception may be installing a lightweight agent on the servers.) This makes them highly useful tools in uncovering and correcting application-degrading issues by pinpointing the exact line of code responsible for the latency for a given transaction.
Third Party App Performance Management Features
|Automatic resource discovery||End-to-end transaction visibility||No application code changes|
|Track complete business transactions||Extensive analytics||Deep integration with AWS compute, storage, and network assets|
|Capable of consuming AWS CloudWatch logs||Native AWS, SaaS, and on-premise deployment models|
Third Party APM Software and Tools
|AppDynamics||AppDynamics offers a technology solution that supplies end-to-end business transaction-centric management of the most complex and distributed applications. Auto-discovered transactions, dynamic baselining, code-level diagnostics, and Virtual War Room collaboration ensure rapid issue identification and resolution to maintain an ideal user experience.|
|Dynatrace||Dynatrace AppMon provides deep application monitoring and performance lifecycle management. It detects and diagnoses problems in real time, drilling down to the offending code for fast resolution.|
|New Relic||New Relic APM offers detailed performance metrics for every aspect of the environment, in real-time. This makes it possible to view app performance down to specific lines of code, see how each component is connected, and resolve problems fast.|