当前位置: 首页 > 知识库问答 >
问题:

了解Spring Boot actuator`http。服务器请求“度量最大值”属性

商畅
2023-03-14

有人能解释一下MAX统计数据在下面的回复中指的是什么吗?我在任何地方都没有看到它的记录。

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

答复:

{  
   "name":"http.server.requests",
   "description":null,
   "baseUnit":"milliseconds",
   "measurements":[  
      {  
         "statistic":"COUNT",
         "value":13
      },
      {  
         "statistic":"TOTAL_TIME",
         "value":57.430899
      },
      {  
         "statistic":"MAX",
         "value":0
      }
   ],
   "availableTags":[  
      {  
         "tag":"exception",
         "values":[  
            "None"
         ]
      },
      {  
         "tag":"method",
         "values":[  
            "GET"
         ]
      },
      {  
         "tag":"outcome",
         "values":[  
            "SUCCESS"
         ]
      },
      {  
         "tag":"status",
         "values":[  
            "200"
         ]
      },
      {  
         "tag":"commonTag",
         "values":[  
            "somePrefix"
         ]
      }
   ]
}

共有2个答案

龙华翰
2023-03-14
匿名用户

  • MAX代表什么

MAX表示执行endpoint所用的最长时间。

对用户/资产的分析

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)  
  • 如果我们对特定endpoint的请求数量较少(或1个请求),MAX会是0吗?

对特定endpoint的请求数量不会影响最大值(请参阅Spring Boot Admin提供的图片)

  • 当MAX将为0

有定时器设置值0。当某个时间没有调用或执行终结点时,定时器将MAX设置为0。这里的近似计时器值是2分钟(120秒)

如果在过期时间或旋转时间之间没有请求,则将一些测量值设置为0。

  • 我是如何确定计时器值的

为此,我采集了6个样本(对同一个endpoint执行了6次)。为此,我已经确定了调用endpoint的时间与MAX设置为零的时间之间的时间差

更多细节

使现代化

文件已更新。

注:

>

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

如果时间窗口结束,它将被重置为0,新的时间窗口将再次启动。

时间窗口大小将是仪表注册表的步长,除非分布式统计配置中的到期显式设置为其他值。

容俊豪
2023-03-14

您可以使用?tag=url:{endpoint_tag}在根/exactor/metrics/http的响应中定义。服务器请求呼叫。测量值的详细信息如下:;

  • 计数:呼叫的每秒速率。
  • TOTAL_TIME:记录的次数之和。报告在监控系统的基本时间单位
  • MAX:记录的最大金额。当这表示一个时间时,它被报告在监视系统的基本时间单位中。

如这里所给,也在这里。

你看到的差异是由于计时器的存在。这意味着经过一段时间后,任何标记度量的当前定义的MAX值可以重置回0。您能否向/myControllerMethod添加一些新调用,然后立即调用/exactor/metrics/http。服务器请求查看给定标签的非零MAX值?

这是由于为每个较小的周期获取MAX度量背后的想法。当您看到这些指标时,您将能够在很长一段时间内获得一组MAX值,而不是单个值。

您可以在Millimer源代码中看到这一点。有一种rotate()方法专注于重置MAX值来创建上述行为。

您可以看到,这是为每个poll()调用调用调用的,该调用每隔一段时间触发一次,用于度量收集。

 类似资料:
  • Python 的标准库 urllib 提供了大部分 HTTP 功能,但使用起来较繁琐。通常,我们会使用另外一个优秀的第三方库:Requests,它的标语是:Requests: HTTP for Humans。 Requests 提供了很多功能特性,几乎涵盖了当今 Web 服务的需求,比如: 浏览器式的 SSL 验证 身份认证 Keep-Alive & 连接池 带持久 Cookie 的会话 流下载

  • 本文向大家介绍.net mvc超过了最大请求长度的解决方法,包括了.net mvc超过了最大请求长度的解决方法的使用技巧和注意事项,需要的朋友参考一下 在我们的项目中遇到"超过了最大请求长度"如下图所示,是因为IIS默认请求长度4M,当请求长度大于这个值的时候报错,下面是解决方案. 解决方案:修改web.config文件 1、注意在mvc中有两个web.config文件,如下图,一个位于Views

  • 问题内容: 我正在为AbstractHibernateRepository保存方法编写单元测试。我正在使用弹簧测试运行器,但运行时出现以下异常: 我的测试: 仓库: 弹簧配置: 是什么导致此问题,如何解决? 问题答案: 我可能完全不在这里,但是对我来说,这似乎是会话处理异常。在打开和关闭会话中,然后在当前会话中,这可能是您刚刚关闭的会话,从而导致异常。如果您不关闭它,请尝试一下它是否起作用(我知道

  • 测试这种服务的基本策略是验证请求的内容(正确的URL),并确保我们模拟到服务中的数据通过正确的方法正确返回。 wikisearch.ts 我们的测试策略是检查服务是否已请求正确的网址,一旦我们回复了模拟数据,我们就要验证它是否返回相同的数据。

  • 这个错误的原因是什么?我如何修复它或设置我想要的代理?

  • 我在第三方服务器上有一个在线表单,提交数据使用标准的HTTP POST请求发送到我的Cold融合页面。我需要在. cfm页面中检索表单数据并插入到数据库中。我使用requestcatcher.com,我可以看到下面的帖子请求数据格式: POST /testHTTP/1.1主机:mytest.requestcatcher.com连接:保持-存活内容-长度:1198内容-类型:多部分/表单-数据;边界