如何在Prometheus/Grafana中查找Istio Kiali面板的相关指标
查找Istio Kiali相关指标及计算响应时间的方法
一、获取Applications Traces中的Full Duration指标
Kiali的Applications Traces里的Full Duration指的是请求在整个应用链路中的总耗时,对应的Prometheus核心指标是istio_request_duration_milliseconds(直方图类型,包含_sum、_count、_bucket三个子指标)。
查询方式:
- 平均Full Duration:通过总耗时除以请求数计算,针对指定应用执行以下PromQL:
sum(rate(istio_request_duration_milliseconds_sum{app="你的应用名"}[5m])) by (app) / sum(rate(istio_request_duration_milliseconds_count{app="你的应用名"}[5m])) by (app) - 分位数Full Duration(如95分位,反映绝大多数请求的耗时):
histogram_quantile(0.95, sum(rate(istio_request_duration_milliseconds_bucket{app="你的应用名"}[5m])) by (le, app))
二、计算概览流量图中的应用响应时间
概览视图的应用响应时间通常指入口请求的处理耗时(即Inbound方向的请求),基于Istio的Inbound指标计算:
查询方式:
- 平均响应时间:
sum(rate(istio_request_duration_milliseconds_sum{app="你的应用名", direction="inbound"}[5m])) by (app) / sum(rate(istio_request_duration_milliseconds_count{app="你的应用名", direction="inbound"}[5m])) by (app) - 流量趋势+响应时间组合:可以同时搭配请求数指标
istio_requests_total,在Grafana中创建双轴图表,直观展示流量和响应时间的关联:
请求数查询:sum(rate(istio_requests_total{app="你的应用名", direction="inbound"}[5m])) by (app)
三、在Grafana中复刻Kiali的Applications/Overview视图
- 确保Grafana已连接采集Istio指标的Prometheus数据源;
- 新建面板,选择Prometheus数据源,输入上述对应PromQL语句;
- 根据需求调整图表类型(折线图、柱状图或双轴图),添加图例、时间范围等配置,即可实现和Kiali面板一致的指标展示。
内容的提问来源于stack exchange,提问作者Lyu Bo Cian
相关产品推荐
相关产品推荐

