Application Performance Management, or APM, has existed as a discipline within the IT industry since at least the early 2000s, when tools like Wily first appeared on the scene.
Yet despite being a relatively “old” type of technology (by IT standards, at least), the APM ecosystem is witnessing massive innovations. You might even say that we’re in the midst of an APM revolution.
Here’s why.
Traditional APM
When APM first appeared, the fundamentals of the technology were pretty straightforward: you collected data, analyzed the data for anomalies or patterns that could signal a problem, then manually addressed the problem. First-generation APM tools excelled at collecting data and alerting IT teams when something appeared to be off, based on preset configurations that defined what was “normal” and what was not.
Little about this changed fundamentally for the first fifteen years or so of APM’s existence. The tools became a little more user-friendly. Alert management grew more sophisticated, reducing instances of alert fatigue. The APM ecosystem grew much more diverse, with a variety of commercial solutions appearing alongside the original open source monitoring platforms. And many APM platforms shifted from an on-premises architecture to a SaaS model.
Yet despite these changes, the core functionality of APM remained the same: your tools collected data, analyzed the data, and sent you alerts. The types of environments managed by APM didn’t change much either. Until about five years ago, most teams were still monitoring the same types of virtual and physical servers and monolithic applications that they had been using since the early 2000s.
The APM Revolution
Yet all of this began to change starting around the middle of the last decade, which touched off an APM revolution. This was the result of a variety of factors.
Microservices and Complex Infrastructure
One spark for the APM revolution was the need to manage the performance of more complex types of applications and infrastructure. As Docker containers (which appeared in 2013) and Kubernetes (which debuted two years later) gained massive adoption, and as development teams migrated to microservices architectures, the nature of application environments and the infrastructure hosting them changed radically.
Today’s environments consist of many more layers and moving pieces. It’s no longer enough to collect just basic monitoring data, like whether a server is up or how long an application takes to respond.
Instead, APM tools must now be able to collect and interpret a broad range of data from all of the different components of an environment, understand the relationships between different data points, and interpret them collectively to generate meaningful insights. The root cause of a performance problem in one microservice could lie within another microservice, or deep within one of the infrastructure layers that hosts the microservice.
Traditional APM tools can’t handle that type of complexity, which is why modern APM has shifted toward microservices-aware tools that can map the complex relationships between the various parts of an application and the infrastructure on which it runs.
Dynamic Baselining
A related factor driving rapid innovation in APM today is that we’re living in a new normal in which there is no normal – at least when it comes to application monitoring and management.
The profiles of modern application environments change so rapidly that it has become impossible to establish a baseline of ordinary activity and use it to detect anomalies. The number of instances of an application (or a microservice within an application) could fluctuate constantly in response to changes in demand. So could the resources allocated to host infrastructure or the network traffic patterns within the environment.
Amidst this constant change, APM requires a new approach based on dynamic alerting thresholds that can distinguish between unremarkable changes and those that signal a meaningful issue. Conventional APM tools were not designed to do this, but next-generation solutions are embracing the need for dynamic interpretations of software environments.
AIOps
AIOps, too, has become a key force behind the APM revolution.
Although the term AIOps didn’t appear until 2016, you could argue that AIOps existed before then in practice, since IT operations teams have long used data analytics to help provide visibility into software environments. However, what changed in recent years is that AIOps has grown much more sophisticated, with tools that are capable not just of reacting to events or making suggestions about how IT engineers should act, but also of automatically remediating problems themselves.
Along with that change has come important new opportunities for APM tools. In the past, the role of data analytics within APM was limited mostly to helping to parse log files in order to draw out relevant patterns or anomalies. Today, data analytics can do much more by making prescriptive recommendations and driving automated decision-making on the part of AIOps tools.
Put another way, AIOps means that APM platforms are gaining critical new types of functionality that extend data-driven automation across APM workflows. Instead of just using analytics to interpret monitoring data and leaving the rest of the work up to engineers to perform manually, AIOps is enabling more automated and systematic approaches to application performance management.
The Future of APM
Although it’s hard to say exactly what APM will look like a few years from now, it’s clear that it will be distinguished in several key respects from the way APM has worked for most of the past two decades. In the future, APM will be characterized by:
- Greater focus on automation: Automation within APM platforms will be not just an advanced feature that can be applied to some workflows, but a core type of across-the-board functionality.
- An ability to manage constant change: The old paradigm of defining a baseline of “normal” activity and measuring anomalies against it will go away, with APM tools becoming more and more adept at understanding the constant fluctuations within the environments they monitor.
- The mapping of complex relationships: APM tools will be able to understand how the various components and layers of a software environment interact, and how changes in one component impact others.
These features are where the APM revolution has us heading. It may take several more years for them to achieve maturity, but it’s a safe bet that, by 2025 or so, APM will look nothing like it did circa 2015.
To learn more about how APM is changing, download the guide: The Definitive Guide to Application Performance Monitoring in the Age of AIOps.