The Relicans

loading...
Cover image for What is APM?

What is APM?

Kirk Haines
I've had a 30+ year career across spectrum from System and DevOps to SRE type work to (a lot of) Software Engineering, and I love helping others to grow in their careers.
・2 min read

APM. It is another of those acronyms, like o11y, that people may see often today, but a clean definition of what it means is not always obvious.

So let's clear that up!

APM is...

Application Performance Monitoring

Some vendors will also call it Application Performance Management, but you shouldn't get too hanged up on that difference; it's mostly marketing-speak.

The important concept with APM is that it involves observability into your application's behavior and performance.

An APM agent will integrate with your application, and will provide real time insight into the performance and the events that are occurring inside of your application.

The details for how, exactly, this works will vary by agent provider and by language, but for some combinations of those things, installing APM into your application can be remarkably simple and non-intrusive.

For example, New Relic's Ruby APM agent is distributed as a Ruby Gem. And while there are a lot of details that can affect what you do with it, the basics of it are very simple. Add the gem to your gemfile, and then setup a basic configuration file for it so that the APM agent has access to your New Relic account, and restart your app.

Regardless of the details for a given language or even a given vendor, though, every production application can benefit from APM. Application Performance Monitoring means that you have real-time information about how well the software is working, and whether there is an acute outage, a persistent bug, or work to be done to optimize performance and resource usage, the telemetry collected by APM is invaluable.

Discussion (0)