Adoption APM when Performance Matters
As enterprises embrace the DevOps philosophy, and the coalescence of the Development and Operations continues, I foresee the conditions ripening to foster innovative methods of making application performance better and code deployments smoother. To me, the argument that system monitoring is just a “nice to have” and not really a core requirement for operational readiness dissipates quickly when a critical application goes down with no warning.
Application Performance Management (APM) has been bred with all the right elements to give us the insights we need to see the health of our applications. Similar to your most trusted watch dog, it alerts us to anomalies when events occur, providing awareness to the environment that only they can observe.
This is where APM can bridge the gap between Development and Operations, supporting the entire application lifecycle. There are certain APM principles that weave themselves in and through the DevOps philosophy that create a fabric of continuous improvement. The end-user-experience (EUE) is one of these threads, becoming the yardstick by which to measure application performance.
Development and Operations view APM in a slightly different light, largely because it is a concept that consists of multiple complementary approaches for addressing issues surrounding application performance. Understanding the different requirements for Development and Operations is one of the key elements needed for APM adoption to take off in both areas.
It is not necessarily the number of features or technical stamina of each monitoring tool to process large volumes of data that will make an APM implementation successful; it’s the choices you make in putting them together, creating an amplified feedback loop between Development and Operations (one of the core tenets of DevOps).
For example, when looking at the entire system development lifecycle, how extensible will your APM solution be? If it is flexible enough to integrate ubiquitously, and dynamic enough to be configured rapidly, then you will be poised for expansion and be ready to begin monitoring anything that comes your way. To illustrate this concept consider the principles of enterprise monitoring, which gives you a blueprint of the high-level elements to include when implementing an APM solution. Each element goes deep as a broad category, and each category encompasses specific monitoring tools that support the end-user-experience (EUE).
Once you build awareness in the organization that you have a bird’s eye view of the technical landscape and the ability to monitor the ecosystem of each application (as an ecologist), people become more meticulous when introducing new elements into the environment. They know you are watching, taking samples, and keeping a scorecard on successful deployments and operational stability.
Conclusion – As the definition of DevOps is distilled and actions are outlined for a common practice (e.g. “The Phoenix Project”), adding APM to the mix allows organizations to support the speed for Development without compromising the stability for Operations, improving the Customer Experience.
Larry Dragich (LinkedIn) Director of Customer Experience Management at a large insurance company. He is actively involved with industry leaders sharing knowledge of Application Performance Management (APM) best practices, resource allocation, and approaches for implementation. He has been working in the APM space since 2006 where he built the Enterprise Systems Management team which is now the focal point for IT performance monitoring and capacity planning activities. Larry is also a regular blogger on APMdigest, and a contributing editor on Wikipedia focused on defining the APM space and how it ties into the critical ITIL processes many companies are now using.
This article first appeared at LinkedIn and has been reproduced at Practical Performance Analyst with permission from the author.