嗨,我是普罗米修斯度量的新手。我需要向下游服务器公开请求的http_client_requests_seconds_count
和http_client_requests_seconds_sum
。
我已经在我的项目中启用了prometheus
management:
endpoints:
web:
exposure:
include: health,metrics,prometheus
我在pom.xml
中添加了如下依赖项<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
<version>${micrometer.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
和I可以看到http://localhost:8092/actuator/prometheus
中的入站矩阵。如http_server_requests_seconds
等,但无法找到下游指标。
我正在使用spring web-flux响应式框架。
根据这个答案:stackoverflow.com/a/58632953我试了一下,发现没有运气。简单的答案就是将AutoWired
添加到WeclientBuilder
中,并从中构建Webclient
。
@Autowired
private WebClient.Builder webClientBuilder;
this.webClientBuilder.baseUrl(host)
.clientConnector(clientHttpConnector)
.build()
.post()
.uri(uri)...
在application.yml
中配置指标名称,如下所示:
management:
metrics:
web:
client:
request:
autotime:
enabled: true
metric-name: Any_Prefix_http_client_requests
server:
request:
autotime:
enabled: true
metric-name: Any_Prefix_http_server_requests
就是这样,您将在/atuator/prometheus....
中获得出站指标。谢谢!快乐编码