Draft: feat(metrics): Added gRPC metrics
What?
This merge request adds new gRPC metrics functionality.
New Metrics System: A complete gRPC metrics package was added that integrates with Prometheus monitoring. This new system can track request/response sizes, request duration, and other performance metrics for gRPC services. It includes a factory pattern for creating metrics collectors and interceptors that automatically measure gRPC calls.
Enhanced Monitoring: The new metrics system provides both unary (single request/response) and streaming gRPC call monitoring, with configurable histogram buckets for different measurement types.
Why?
Part of: gitlab-com/gl-infra/tenant-scale/cells-infrastructure/team#54
How to set up and validate locally
- Checkout the branch
vg/grpc_metricsof topology-service - Run topology service locally
./env.sh null go run ./cmd/topology-service serve
- Fire a couple of gRPC requests using
grpcurl
grpcurl --plaintext \
:9097 \
grpc.health.v1.Health/Check
{
"status": "SERVING"
}
- Check the metrics endpoint
curl http://localhost:9098/metrics
Edited by Vladimir Glafirov