In this section, we will discuss a few APM tools that monitor the performance of a microservice-based application—but remember, it can be very difficult to select the right monitoring tool for a microservice-based application. Services can vary vastly in design and can be hosted within virtualized machines or containers located across a private cloud, public cloud, or even both.
The purpose of a monitoring tool is to provide insights about all microservices in a distributed application. Some of the reasons we monitor microservices include the following:
We get a view of their performance from an ongoing perspective
We gain the ability to ensure that any new updates or changes do not break monitors in production
We get a clear insight into the microservices, including their health status, memory, resource utilization, CPU load, disk usage, the number of errors, and so on