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

如何使用定制的Spring Boot执行器指标

时宾实
2023-03-14

我有一个用例,需要跟踪给定组件的处理时间指标,并将其用作spring boot应用程序中调优的反馈循环。我想我应该在需要监视的组件中通过一个自动连接的计量服务使用一个自定义指标,该服务工作正常,我可以在/指标endpoint中看到我的指标。我遇到的问题是如何在应用程序代码中使用这些指标。理想情况下,我希望收到每个仪表提交的结果,并计算加权移动平均值。对于spring boot执行器指标来说,这不是一个很好的用例吗?

共有1个答案

甄阳朔
2023-03-14

通过代码读取指标信息应该是安静的,可以通过将MetricsEndpointbean注入到您的应用程序代码中,就像往常一样,我们注入任何其他bean。

度量endpointbean由endpoint自动配置定义。

每个endpoint都定义了[@ReadOperation@WriteOperation@DeleteOperation]注释方法,以便通过公开JMX、Spring webflux等技术来调整该endpoint。

在您的情况下,您可能只对调用MetricsEndpoint的ReadOperation感兴趣,这意味着有两种方法:列表名(listNames)或度量(metric)。有关更多信息,请参阅给定的链接。

现在,何时/多久调用此endpoint仅取决于您。

希望这有帮助。

 类似资料:
  • 我们什么时候应该使用Spring boot执行器。如果包括在内,它对应用程序内存和CPU使用有多大影响? 我目前正在使用Spring Boot 2. x。

  • 我希望所有执行器endpoint(在文档中描述)都可用。在文档之后,添加了启动器启动器依赖项和属性,但大多数endpoint不可用(HTTP 404)。 唯一可用的endpoint是,但它显示无用的信息: 添加属性。 添加了依赖项: 获取/执行器的结果 启用执行器endpoint的最小设置是什么?

  • 如何将Spark Streaming指标汇到执行者的StatsD汇? 类似于其他报告的问题(未找到接收器类,接收器类在执行器中),我可以获得驱动程序指标,但执行器在我的设置中抛出< code > ClassNotFoundException : > < li>StatsD sink类是用我的Spark-Streaming应用程序(< code>my.jar)编译的 < li> 运行时使用: (将包

  • 我使用Spring执行器和Spring靴来检查我的服务的健康。我使用OpenJDK11。并使用: Spring-boot依赖关系: 执行器依赖性:

  • springboot项目中使用cron如何设置在未来的某一天的几点钟开始每2个小时执行一次任务

  • 现在,当我们知道提交给的工作是一个长时间运行的操作时,我们需要传递一个自定义执行器(否则默认情况下它将在上执行)。 每个控制器执行都有一个上下文,其中包含所有请求信息。如果使用,······ 如果我们只是创建自定义的并将其注入到控制器中,以便在中使用,那么我们将不会拥有所有的上下文信息。 下面是返回的某个控制器操作的示例 } 如果我们尝试在中运行类似的内容 使用CompletableFuture和