Implementation of a monitoring strategy for products based on microservices
- Proper instrumentation of microservices ensures faster pinpointing and troubleshooting of problems.
- These include metrics for availability, metrics for capacity planning or to detect resource saturation, and metrics to understand internal states of each instance of a microservice.
- You need horizontal monitoring to monitor communication between microservices and their availability to each other.
- Load balancing across instances of microservices depends on several instances of each microservice communicating with several instances of others, so it is useful to have each microservice monitor the quality of its own inbound or outbound calls with other services as well as to have smart gateways in the service mesh inform on traffic entering and leaving it.
- Logs are the best place to keep metrics for each ETL job and are cheaper than metrics systems that are labeled by job ID.
- While metrics monitor all events crossing a particular checkpoint over time, traces monitor each event as it travels through the entire microservices chain. Traces are really helpful in monitoring flows in the product.
Full post here, 8 mins here