You want to understand the meaning of grpc_server_started_total and grpc_server_handled_total Prometheus metrics, including their units and values, presented in a table format. Here is a table that explains these two metrics.
| 지표명 (Metric Name) | 값 단위 (Unit) | 유형 (Type) | 의미 (Meaning) |
|---|---|---|---|
grpc_server_started_total | 횟수 (Count) | Counter | gRPC 서버가 수신한 총 요청 수. 클라이언트로부터 gRPC 호출이 시작될 때마다 값이 1씩 증가합니다. 이 지표는 서비스가 받은 전체 요청의 양을 측정합니다. |
grpc_server_handled_total | 횟수 (Count) | Counter | gRPC 서버가 처리 완료한 총 요청 수. 서버가 클라이언트 요청에 대한 응답을 보내거나 스트림을 종료할 때마다 값이 1씩 증가합니다. 이 지표는 성공적으로 완료된 요청과 실패한 요청을 모두 포함하며, grpc_server_handled_total 지표는 grpc_server_handled_total{grpc_server_method="..._method_name_..."} 과 같이 레이블로 세분화됩니다. |
grpc_server_started_total: 이 지표는 gRPC 호출이 시작된 시점에 증가합니다. 클라이언트가 요청을 보내면 즉시 카운트됩니다.grpc_server_handled_total: 이 지표는 gRPC 서버가 요청 처리를 완료하고 응답을 보낼 때 증가합니다. 따라서 started와 handled의 값에 차이가 있을 수 있습니다.rate(grpc_server_started_total[5m])을 사용하여 지난 5분 동안의 초당 평균 요청 수를 계산할 수 있습니다.grpc_server_handled_total 지표는 grpc_code (OK, CANCELLED, DEADLINE_EXCEEDED 등) 레이블을 포함하므로, sum(rate(grpc_server_handled_total{grpc_code!="OK"}[5m]))와 같이 쿼리하여 에러율을 모니터링할 수 있습니다.grpc_server_started_total - grpc_server_handled_total을 계산하여 현재 서버에서 처리 중인 요청의 수를 파악할 수 있습니다. 이 값이 높으면 서버가 과부하 상태이거나 처리 지연이 발생하고 있음을 나타낼 수 있습니다.