我们的 prometheus 中提供了入口控制器的以下 3 个指标,我试图了解这些指标之间的差异。
我的理解,
request_duration - 在 nginx 中到达请求与将响应发送回客户端之间的时间。
ingress_upstream_latency - 上游服务器/pod 接受请求之前 nginx 中等待的时间。
response_duration - 从后端容器 /pod 获取响应的时间
# HELP nginx_ingress_controller_request_duration_seconds The request processing time in milliseconds
# TYPE nginx_ingress_controller_request_duration_seconds histogram
# HELP nginx_ingress_controller_ingress_upstream_latency_seconds Upstream service latency per Ingress
# TYPE nginx_ingress_controller_ingress_upstream_latency_seconds summary
# HELP nginx_ingress_controller_response_duration_seconds The time spent on receiving the response from the upstream server
# TYPE nginx_ingress_controller_response_duration_seconds histogram
Run Code Online (Sandbox Code Playgroud)
因此,根据上述指标 request_duration = ingress_upstream_latency+ response_duration