指标不会显示在/ prometheus端点上

时间:2017-11-19 17:44:16

标签: spring-boot spring-cloud hystrix prometheus micrometer

我有两个服务pingpong,其中pingpong发送请求。此指标显示在/metrics服务的ping端点上:

gauge.servo.hystrix.hystrixcommand.http://pong.pongclient#hello().90

但它不会出现在/prometheus端点上。其他指标出现在此端点上,但不包含有关Feign / Hystrix http请求信息的伺服度量标准。

如何让这些指标显示在/prometheus端点上?

我对build.gradle

有以下依赖关系
compile 'org.springframework.boot:spring-boot-starter-web'
compile 'org.springframework.boot:spring-boot-starter-actuator'
compile 'org.springframework.cloud:spring-cloud-starter-eureka'
compile 'org.springframework.cloud:spring-cloud-starter-hystrix'
compile 'org.springframework.cloud:spring-cloud-starter-feign'
compile 'org.springframework.retry:spring-retry'
compile "io.micrometer:micrometer-core:${micrometerVersion}"
compile "io.micrometer:micrometer-spring-legacy:${micrometerVersion}"
compile "io.micrometer:micrometer-registry-prometheus:${micrometerVersion}"

以下版本

springCloudVersion = 'Dalston.SR4'
micrometerVersion = '1.0.0-rc.4'

可在此处找到代码https://github.com/fiunchinho/spring-resiliency

2 个答案:

答案 0 :(得分:4)

您需要手动为Hystrix添加插件:

get

您可以在配置中的HystrixPlugins.getInstance().registerMetricsPublisher(new MicrometerMetricsPublisher(Metrics.globalRegistry)); 中添加它。

我已创建https://github.com/micrometer-metrics/micrometer/issues/237以解决未来的缺点。

答案 1 :(得分:-1)

您需要检测和配置弹簧引导服务以使用prometheus进行监视,如下所示:

  1. 您需要在gradle.build文件中包含依赖项
  2. 您需要实施指标端点
  3. 您需要添加Prometheus JVM的标准导出器
  4. 有关如何执行此操作的详细实施详情,请参阅示例here以及here