Istio 流量指标

该平台提供丰富的流量指标数据,支持用户从多个维度分析服务流量质量。

前提条件

该服务已注入 Sidecar,详情请参考 Adding Services

快速开始

  1. 在左侧导航栏中,点击 Monitoring

  2. 选择要查看监控数据的服务以及时间范围。

    注意:查询时间范围受 Prometheus 监控数据保留周期限制。例如:如果监控数据最多保留 7 天,而设置的时间范围为最近 30 天,则统计数据仅覆盖 7 天。

  3. 点击对应的标签页,查看该服务的流量监控数据和 API 流量监控数据。

    说明:当 service mesh 管理多个集群,且多个集群中存在相同 namespace 和名称的服务(非 Dubbo 协议服务)时,流量监控图表展示的是多个集群中这些服务的聚合监控数据。
    使用 Cluster Traffic Comparison 图表可对比该服务在各个集群中的监控数据。

服务流量监控

常规操作

  • 刷新数据:当前页面上的监控统计数据仅在页面打开时自动刷新一次。如需再次刷新,可使用以下两种方式:

    • 手动刷新:点击页面右下角的 ,手动刷新数据。

    • 设置自动刷新(默认关闭):点击 ,设置自动刷新数据的时间间隔。

  • 查看/设置图例:点击图表右上角的 ,展开监控图表中的图例。点击图例可隐藏/显示图表中对应的曲线。

  • 放大查看监控图表:点击图表右上角的 ,在弹窗中查看放大后的、更详细的监控图表。

监控数据说明

HTTP/HTTP2/gRPC、Dubbo 协议

监控指标说明
平均响应时间查询时间范围内的平均响应时间(总响应时间/响应总次数)。
平均入流/出流 RPS查询时间范围内入流/出流 RPS(Requests Per Second)的平均值。
响应时间服务间或服务自身的响应时间,展示为平均值、TP 50、TP 95、TP 99。
TP(Top Percentile)xx 表示 xx% 网络请求所需的最短持续时间,常用于系统性能监控场景。
将鼠标悬停在曲线上,可查看某一时段的响应时间。
入流/出流 RPS查询时间范围内的总入流/出流流量 RPS 和错误入流/出流流量 RPS。
RPS = 查询时间内的请求次数 / 查询时长(s)
入流/出流流量查询时间范围内的总入流/出流请求量,以及按 HTTP 返回码划分的流量占比(正常/2xx、3xx、4xx、5xx)。
将鼠标悬停在柱状图上,可查看各类别的流量占比。
客户端流量对比客户端 指向当前服务(上游服务)发起请求的客户端服务(下游服务)。客户端流量对比 会对不同客户端调用当前服务的 响应时间入流 RPS 以及入流 RPS 错误率(Error RPS/RPS)进行对比展示。

说明
- Unknown client 指 service mesh 内调用当前服务、且流量未受 Sidecar 管理的客户端集合(HTTP 协议)。
- 如果客户端属于当前 namespace,点击客户端名称旁的 Trace 会跳转到 trace 页面。
- 当金丝雀发布服务存在两个版本时,展示两个版本的聚合数据。

TCP 协议

监控指标说明
入流/出流流量查询时间范围内入流和出流流量的字节流大小。
平均入流/出流流量查询时间范围内入流/出流流量(流量/持续时间)的平均值。
入流/出流入流和出流服务网络的字节流传输速率(bytes per second)。
TCP 连接连接总数。
错误率 = 失败连接数 / 连接总数
成功率 = 成功连接数 / 连接总数
将鼠标悬停在不同颜色的柱状图上,可查看各类别的连接数。
客户端流量对比对比服务与访问当前服务的客户端服务之间的网络入流字节流传输速率。

API 流量监控

为了确保监控系统的性能,您需要先在平台上 declare service API。随后,平台会在服务的流量指标中区分已声明的 API 流量质量。

成功声明服务 API 后,您可以在 API 流量监控标签页中选择该服务下的 API。

监控数据说明

提示:在查看数据时,您可以参考 常规操作 来刷新监控数据,或隐藏与图例对应的数据。

  • 平均响应时间:所选时间范围内的平均响应时间(总响应时间/响应总次数)。

  • 响应时间:展示为平均值、TP 50、TP 95、TP 99。支持查看单个值的响应时间。将鼠标悬停在曲线上,可查看某一时段的响应时间。 TP xx 表示 xx% 网络请求所需的最短持续时间,常用于系统性能监控场景。

  • 平均入流 RPS:所选时间范围内 RPS 的平均值。

  • 入流 RPS:Requests per second,展示流量曲线。支持查看总流量 RPS,或单击选择错误流量 RPS。

  • 流量:展示所选时间范围内的访问总数、平均成功率和平均错误率。颜色表示不同的 HTTP 状态码:深绿色表示成功状态(2XX),浅绿色表示重定向(3XX),橙色表示客户端请求错误(4XX),红色表示服务端错误(5XX)。平均错误率 = (4XX+5XX) / 总流量 × 100%。