了解Spring Boot执行器的http.server.requests指标MAX属性

时间:2019-07-12 09:18:59

标签: spring-boot spring-boot-actuator spring-micrometer

有人可以在下面的响应中解释MAX统计信息指的是什么。我在任何地方都看不到它。

URL: localhost:8081 / actuator / metrics / http.server.requests?tag = uri:/ myControllerMethod

响应:

range(df1$x, na.rm = TRUE)
#[1] 0.28749 1.49567

2 个答案:

答案 0 :(得分:1)

  • MAX代表什么

MAX表示执行端点所需的最长时间。

/user/asset/getAllAssets

的分析
COUNT  TOTAL_TIME  MAX
5      115         17
6      122         17  (Execution Time = 122 - 115 = 17)
7      131         17  (Execution Time = 131 - 122 = 17)
8      187         56  (Execution Time = 187 - 131 = 56)  
9      204         56  From Now MAX will be 56 (Execution Time = 204 - 187 = 17)  

  • 如果对特定端点的请求数(或1个请求)减少,MAX将为0吗?

对特定端点的请求数量不影响MAX (请参阅Spring Boot Admin中的图像)


  • 当MAX为0时

有一个 Timer 将值设置为0。当一段时间未调用或执行端点时,Timer将MAX设置为0。此处近似的定时器值为2分钟(120秒)

DistributionStatisticConfig 具有.expiry(Duration.ofMinutes(2)). 如果在到期时间或轮换时间之间没有请求,则将某些测量值设置为0。


  • 我如何确定计时器值?

为此,我采取了6个样本(对同一端点执行了6次)。为此,我确定了调用端点的时间 MAX设置为零的时间

More Details

enter image description here


更新

Document已更新。

  

注意:

     
      基本DistributionSummary实现(例如CumulativeDistributionSummaryStepDistributionSummary
  • 最大值是一个时间   最大窗口(TimeWindowMax)。

  •   
  • 这意味着它的值是一个时间窗口内的最大值。

  •   
  • 如果时间窗口结束,它将被重置为0,然后新的时间窗口再次开始。

  •   
  • 除非DistributionStatisticConfig中的到期时间设置为其他值,否则时间窗口大小将是电表注册表的步长。   

  •   

答案 1 :(得分:0)

measurements值的详细信息是;

  • COUNT:呼叫的每秒速率。
  • TOTAL_TIME:记录的时间总和。报告监视系统的基本时间单位
  • 最大:记录的最大数量。当它表示时间时,将以监视系统的基本时间单位报告。

同时指定herehere


大约MAX的值为零;

您看到的差异可能是由于您的数据量很少。您可以向/myControllerMethod添加许多呼叫,然后尝试查看MAX的值吗?

似乎是这种情况,当您添加更多数据时,MAX得到一个适当的非零值。值可能有一个计时器,在一天后或一段时间后,它会恢复为零,直到端点再次使用。