0
0
Microservicessystem_design~12 mins

Metrics collection (Prometheus) in Microservices - Architecture Diagram

Choose your learning style9 modes available
System Overview - Metrics collection (Prometheus)

This system collects and monitors performance metrics from multiple microservices using Prometheus. It ensures real-time visibility into service health and resource usage to help maintain system reliability and performance.

Architecture Diagram
User
  |
  v
Load Balancer
  |
  v
API Gateway
  |
  v
+-------------------+       +----------------+
| Microservice A     |<----->| Prometheus     |
| (metrics endpoint) |       | (metrics store)|
+-------------------+       +----------------+
  |
  v
+-------------------+
| Microservice B     |
| (metrics endpoint) |
+-------------------+

Prometheus --> Grafana Dashboard

Components
User
user
End user interacting with the system
Load Balancer
load_balancer
Distributes incoming user requests evenly across API Gateway instances
API Gateway
api_gateway
Routes requests to appropriate microservices and handles authentication
Microservice A
service
Business logic service exposing metrics endpoint for Prometheus scraping
Microservice B
service
Another business logic service exposing metrics endpoint for Prometheus scraping
Prometheus
metrics_store
Scrapes metrics from microservices and stores them for querying
Grafana Dashboard
visualization_tool
Visualizes metrics data from Prometheus for monitoring and alerting
Request Flow - 6 Hops
UserLoad Balancer
Load BalancerAPI Gateway
API GatewayMicroservice A or B
PrometheusMicroservice A
PrometheusMicroservice B
PrometheusGrafana Dashboard
Failure Scenario
Component Fails:Prometheus
Impact:Metrics scraping stops, monitoring data becomes stale, alerts may not trigger
Mitigation:Set up Prometheus replicas with failover and alert on Prometheus health
Architecture Quiz - 3 Questions
Test your understanding
Which component is responsible for collecting metrics from microservices?
APrometheus
BAPI Gateway
CLoad Balancer
DGrafana Dashboard
Design Principle
This architecture uses a pull-based metrics collection model where Prometheus actively scrapes metrics endpoints exposed by microservices. This approach centralizes monitoring control, improves reliability, and decouples metrics collection from service logic.