Skip to content

监控数据上报

Haotian Zhang edited this page Jun 27, 2025 · 4 revisions

目录

概述

Spring Cloud Tencent 基于 Polaris 服务治理平台的可观测性功能完成服务监控数据的上报和展示。Polaris 提供了三种监控指标看板:

  • 路由监控
  • 熔断监控
  • 限流监控

其中,路由监控是根据每一次远程调用的结果状态码上报来完成的,熔断监控是引入熔断模块后每一次远程调用时判断的熔断效果上报完成的,而限流监控是引入限流模块后每一次远程调用时判断的限流效果上报完成的。

快速入门

添加相关配置

由于完成监控上报的主要功能由 spring-cloud-tencent-rpc-enhancement 模块完成,而这个模块被所有 Spring Cloud Tencent 模块引入,因此无需手动再次引入。添加相关配置即可开启监控数据上报。

其中,监控数据的上报方式分为两种,一种是由 Polaris 服务治理平台包含的 Prometheus 服务拉取客户端的监控指标数据,另一种是客户端主动推送到 Polaris 服务治理平台包含的 Prometheus Pushgateway 中。

1.拉取模式

spring.cloud.polaris.stat.enabled	监控数据采集开关
spring.cloud.polaris.admin.host	    Prometheus拉取客户端的IP地址
spring.cloud.polaris.admin.port	    Prometheus拉取客户端的端口号
spring.cloud.polaris.stat.path      Prometheus拉取客户端的请求路径

详见 RPC增强 - 自定义参数

2.推送模式

spring.cloud.polaris.stat.enabled	             监控数据采集开关
spring.cloud.polaris.stat.pushgateway.enabled	 推送模式开关
spring.cloud.polaris.stat.pushgateway.address    Prometheus后端服务(IP:端口号),优先使用
spring.cloud.polaris.stat.pushgateway.namespace  Prometheus后端服务命名空间
spring.cloud.polaris.stat.pushgateway.service    Prometheus后端服务名
spring.cloud.polaris.stat.pushgateway.push-interval 推送间隔,单位毫秒,默认60000
spring.cloud.polaris.stat.pushgateway.open-gzip  推送数据压缩,默认false

3.数据聚合

spring.cloud.polaris.stat.path-regex-list 列表中为一组正则表达式,每个正则表达式可以匹配一组服务调用的path,满足正则表达式的请求,会聚合在同一个数据中进行上报

路由监控使用

开启如下所示开关后,即可使用路由监控。

spring.cloud.tencent.rpc-enhancement.enabled=true
spring.cloud.tencent.rpc-enhancement.reporter.enabled=true

同时,开发者还可以根据自身业务需要,设置需要设置为失败调用的状态码,目前默认为判断5xx且不为500的状态码为失败调用。

spring.cloud.tencent.rpc-enhancement.reporter.ignore-internal-server-error	  调用结果是否将500状态码判定为调用失败
spring.cloud.tencent.rpc-enhancement.reporter.series	                      调用结果判定为调用失败的HTTP状态码系列
spring.cloud.tencent.rpc-enhancement.reporter.statuses                        调用结果判定为调用失败的HTTP状态码

详见 RPC增强 - 自定义参数

熔断监控使用

添加熔断模块 spring-cloud-starter-tencent-polaris-circuitbreaker 即可开启使用。

限流监控使用

添加限流模块 spring-cloud-starter-tencent-polaris-ratelimit 即可开启使用。

Clone this wiki locally