Application Performance Management
APM is a broad and very important aspect of running an application in production. It involves a lot of different technologies, and sometimes it has some unknowns around log aggregation, metrics collection, and overall monitoring, among other things.
Each vendor or stack of monitoring technologies has slightly different comprehensions of what APM is about, and somewhat different implementations of it as a result.
I think that it's good to start from the goal: the goal of APM is to have insights into how a set of applications is performing, and what impact the underlying parameters (such as memory usage, database metrics, and more) have on the end user experience (such as user interface responsiveness, response times, and so on).
It is easy to understand that to implement such a useful (and broad) goal, you may need to stack a number of different tools and frameworks.
We have seen some of this in the previous section: you may want...