-
Notifications
You must be signed in to change notification settings - Fork 224
metrics
liubao edited this page Jan 18, 2023
·
3 revisions
Spring Cloud Huawei使用Spring Cloud Actuator和Micrometer生成和上报监控信息。Spring Cloud Huawei增加了服务治理、调用统计等相关监控指标。
默认情况下,Spring Cloud Huawei会间隔5分钟在日志里面打印请求调用时延信息,可以通过下面的配置项控制打印。
spring:
cloud:
servicecomb:
metrics:
logsEnabled: true
includePattern: (.)* # Java正则表达式,只统计包含的 metrics ID。
excludePattern: (.)* # Java正则表达式,不统计包含的 metrics ID。
logsInterval: PT1M # Duration表达式,打印周期
默认情况下,根据 METHOD PATH
统计调用时延,比如:
metrics_logger : [status] [operation] [stage] [requests/cycle/tps] [average] [0, 10) [10,20) [20,50) [50,100) [100,500) [500,2000) [2000,60000)
200:
POST /benchmark/feign/delay/z0:
1001/300/3 2 1000 0 1 0 0 0 0 all
1001/300/3 1 1000 1 0 0 0 0 0 feign POST /benchmark/delay/z0
在一些复杂的场景下,需要将一系列方法作为一个方法统计,或者在网关调用微服务A,微服务调用微服务B场景下,需要使用网关入口的请求进行时延统计,可以将唯一标识设置为请求上下文:
spring:
cloud:
servicecomb:
context:
useContextOperationForMetrics: true
设置以后,调用的标记使用 x-operation-id
来识别, 并且请求过程中均使用这个标记。 如果没有这个上下文,会根据METHOD PATH
生成 x-operation-id
。
一般会通过prometheus来上报监控信息。在项目中引入相关依赖:
<dependency>
<groupId>com.huaweicloud</groupId>
<artifactId>spring-cloud-starter-huawei-actuator</artifactId>
</dependency>
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
</dependency>
开启 health, prometheus等监控端点, 在 application.yml
中配置:
management:
endpoint:
health:
group:
readiness:
include: registry
endpoints:
web:
exposure:
include: "health,prometheus"
metrics:
tags:
application: ${spring.application.name}
- 查看健康状态
http://IP:PORT/actuator/health/readiness
http://IP:PORT/actuator/health/liveness
- 查看监控(metrics) 数据
http://IP:PORT/actuator/prometheus
可以在 ServiceStage
中使用这些端点,实现灵活的滚动升级,以及往 AOM
上报监控数据。
-
使用Spring Cloud Huawei功能
-
使用服务治理
-
生态集成
-
迁移改造问题
-
配置参考
-
优秀实践
-
常见问题