使用 statsd datadog 测微计错误的 SLO 直方图计数

问题描述

背景:

我正在尝试使用 micrometer 的 SLO 功能,我希望可以获得满足 SLO 的请求数量。例如,如果我将 SLO 设置为 500 毫秒,那么我想知道有多少请求

问题:

http.server.requests.count 说 24 带有标签 le:_inf 的 http.server.requests.histogram 说 126

我相信它们应该具有相同(或至少相似)的值

我正在使用:

Spring Boot 2.3.2.RELEASE 千分尺:1.5.2

application.properties

management.metrics.enable.all=true
 management.metrics.export.statsd.enabled=true
 management.metrics.export.statsd.flavor=datadog
 management.metrics.export.statsd.host=127.0.0.1
 management.metrics.export.statsd.port=8125
 management.metrics.web.client.request.metricName=acd.http.client.requests
 management.metrics.web.server.request.metricName=acd.http.server.requests

仪表过滤器

 @Configuration
 open class AccomWebFluxMeterFilter {
 
   @Bean
   open fun meterFilter(): MeterFilter {
     return object : MeterFilter {
       override fun configure(id: Meter.Id,config: distributionStatisticConfig): distributionStatisticConfig? {
         if (id.name.startsWith("acd.http.server.requests") || id.name.startsWith("acd.http.client.requests")) {
           return distributionStatisticConfig.builder()
             .percentiles(0.5,0.75,0.95,0.998,0.9995,0.9999)
             .serviceLevelObjectives(
               Duration.ofMillis(50).toNanos().todouble(),Duration.ofMillis(100).toNanos().todouble(),Duration.ofMillis(1000).toNanos().todouble(),Duration.ofMillis(5000).toNanos().todouble()
             )
             .build()
             .merge(config)
         }
         return config
       }
     }
   }
 
 }

数据狗

enter image description here

enter image description here

enter image description here

关于这里发生了什么的任何线索? 谢谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)