The Key To Useful Application Performance Monitoring -- Service First
from the everything-as-a-service dept
In my experience, the keystone to deploying useful application performance monitoring is to first define and build a hierarchical model of the target application as a service. We have long left a world of stand alone servers and atomic applications, and good performance monitoring solutions should be designed from the ground up to account for each technology involved in the application's delivery.
Naturally the scope of data and events involved in monitoring a modern application's performance as a service can quickly become unwieldy, with information being collated and (hopefully) aggregated from a large number of distinct technologies. To further add to the complexity, the software systems used to target and extract data will also vary from technology to technology. While one might choose to license a single vendor's "monolithic framework" instead of programming solutions internally, the vendor's code to gather data from a router will be distinct from the code used to gather storage information, and so on. Contrary to what marketing claims may be made, there is no "magic button" in any monitoring product that will sort out the relevance of data coming from a subsystem as it relates to an application as it is implemented in the environment.
Defining a common named hierarchy of the application's involved technology upfront enables engineers to systematically "tag" relevant data and events coming from a multitude of sources and correlate them to the appropriate application service (or in some cases... multiple applications). Correlation is the key to all-inclusive monitoring, as information without context is useless.
If the company has not already started using named hierarchies elsewhere in monitoring, it might be a good ideas to develop a basic hierarchical naming standard in the open and let other parties who will (or should) be using the standard provide input to the project. Once an environment starts successfully treating and monitoring one application as a service, there will be a drive from all application owners to do the same for them.
Thank you for reading this Techdirt post. With so many things competing for everyone’s attention these days, we really appreciate you giving us your time. We work hard every day to put quality content out there for our community.
Techdirt is one of the few remaining truly independent media outlets. We do not have a giant corporation behind us, and we rely heavily on our community to support us, in an age when advertisers are increasingly uninterested in sponsoring small, independent sites — especially a site like ours that is unwilling to pull punches in its reporting and analysis.
While other websites have resorted to paywalls, registration requirements, and increasingly annoying/intrusive advertising, we have always kept Techdirt open and available to anyone. But in order to continue doing so, we need your support. We offer a variety of ways for our readers to support us, from direct donations to special subscriptions and cool merchandise — and every little bit helps. Thank you.
–The Techdirt Team
Reader Comments
Subscribe: RSS
View by: Time | Thread
As a Service
There are plenty of ways to throw monitoring on a service, but I prefer to watch over events to make sure things are running smoothly, the bits and pieces that make everything work.
[ link to this | view in chronology ]