spring boot自测

这是快速入门,介绍了如何使用出色的Micrometer库来检测基于Spring Boot 2的应用程序并在Prometheus中记录指标

介绍

Micrometer在不同监视工具提供的客户端库上提供了基于Java的外观。

以Prometheus为例,如果我要将Java应用程序与Prometheus集成在一起,我会使用称为Prometheus Client Java的客户端库,使用数据结构(Counter,Gauge等)来收集数据并将数据提供给Prometheus。 如果出于任何原因更改了监视系统,则必须为新系统更改代码。

Micrometer试图通过提供应用程序在编写代码时使用的通用外观来缓解这种情况,绑定到监视系统纯粹是运行时的问题,因此将Prometriceus的Metrics系统更改为Datadog仅需要更改运行时库而无需任何代码更改。

检测Spring Boot 2应用程序

为基于Spring Boot 2的应用获得Micrometer支持并不需要做任何特别的事情,在执行器启动器中添加Micrometer作为传递依赖项:

例如 在基于gradle的项目中,这已足够:

dependencies {compile('org.springframework.boot:spring-boot-starter-actuator')...
}

另外,由于打算将数据发送给Prometheus,因此必须提取依赖项,以提供必要的Micrometer SPI。

dependencies {...runtime("io.micrometer:micrometer-registry-prometheus")...
}

默认情况下,Micrometer提供了一组智能绑定,可对基于Spring的Web和Webflux端点进行检测,并添加计量器以收集持续时间,呼叫次数。 此外,它还提供了绑定以收集JVM指标-内存使用情况,线程池等。

需要启用应用程序属性以公开Prometheus将用来刮取度量标准数据的端点:

endpoints:prometheus:enabled: true

如果此时启动了应用程序,则“ / applications / prometheus”端点应该可用,其中显示了一组丰富的指标,以下是我的计算机上的示例:

默认度量标准非常丰富,应涵盖应用程序的大多数通用度量标准要求,如果需要其他度量标准,则可以很容易地将其添加,如以下代码片段所示:

class MessageHandler {private val counter = Metrics.counter("handler.calls", "uri", "/messages")fun handleMessage(req: ServerRequest): Mono<ServerResponse> {return req.bodyToMono<Message>().flatMap { m ->counter.increment()...
...
}

与Prometheus集成

可以将Prometheus配置为从Spring Boot2应用程序公开的端点中抓取数据,Prometheus配置的片段如下所示:

scrape_configs:- job_name: 'myapp'metrics_path: /application/prometheusstatic_configs:- targets: ['localhost:8080']

这实际上不是生产配置,在生产设置中,最好使用Prometheus Push Gateway来代理度量标准的收集。

Prometheus提供了一个基本的UI来预览其抓取的信息,默认情况下可以在端口9090上对其进行访问。这是一个示例图,其中包含在负载测试期间生成的数据:

结论

Micrometer可以很容易地对应用程序进行检测并收集一组可以在Prometheus中存储和可视化的基本指标。 如果您有兴趣进一步进行此操作,可以在这里找到使用Micrometer的示例应用程序。

翻译自: https://www.javacodegeeks.com/2017/11/using-micrometer-spring-boot-2.html

spring boot自测

spring boot自测_将测微仪与Spring Boot 2一起使用相关推荐

  1. spring boot web项目_阿里技术专家带你使用Spring框架快速搭建Web工程项目

    点击上方 "程序员小乐"关注, 星标或置顶一起成长 第一时间与你相约 每日英文 We all have a past. It's how you deal with it. 每个人 ...

  2. spring cloud全家桶_阿里架构师玩转spring全家桶(实战篇),附赠3本spring电子书...

    Spring框架自诞生以来一直备受开发者青睐,今天在这里分享的是Spring全家桶实战篇电子书籍.书籍内容中包括了Spring.SpringBoot.SpringCloud.SpringMVC四个实战 ...

  3. 将测微仪与Spring Boot 2一起使用

    这是快速入门,介绍了如何使用出色的Micrometer库来检测基于Spring Boot 2的应用程序并在Prometheus中记录指标 介绍 Micrometer在各种监视工具提供的客户端库上提供了 ...

  4. boot spring 没有父子容器_理解 MyBatis 是如何在 Spring 容器中初始化的

    MyBatis 初始化过程就是 生成一些必须的对象放到 Spring 容器中 .问题是这个过程到底生成了哪些对象?当遇到 MyBatis 初始化失败时,如何正确的找到分析问题的切入点?本文将针对这些问 ...

  5. mysql qps 压测_压测QPS 过低

    你好,你的问题中,我可以依据我之前的管理经验回答你问题2.问题3.问题1这个问题并不是我擅长的部分,所以这个问题就不回答你了. 问题2回答: 其实你想解决的就是"copy on write& ...

  6. java程序员能力自测_自测:你到底适不适合学习Java?

    Java一直位居编程语言的榜上首位,最近的排行榜显示的使用率又有大幅增长.这个20多年的语言在焕发第二春. Java是一门面向对象的编程开发语言,随着现在互联网行业的快速发展,许多人开始对Java行业 ...

  7. linux制作deepin启动盘制作工具,深度启动盘制作工具(Deepin Boot Maker)下载_深度启动盘制作工具(Deepin Boot Maker)官方下载-太平洋下载中心...

    深度启动盘制作工具(Deepin Boot Maker)用于来帮助用户简单便捷的制作Deepin启动U盘.Deepin Boot Maker,深度启动盘制作工具用于来帮助用户简单便捷的制作Deepin ...

  8. java小马哥百度网盘_思否编程(小马哥):Java 微服务实践 - Spring Boot / Spring Cloud全套,完整版下载 - VIPC6资源网...

    小马哥 Java 微服务实践 – Spring Boot 系列 pptx segmentfault-lessons-master 03Java 微服务实践 – Spring Boot 系列(三)Web ...

  9. java小马哥mercyblitz,小马哥 Java 微服务实践 - Spring Boot 系列

    资源介绍 教程名称:小马哥 Java 微服务实践 - Spring Boot 系列 教程目录: 03Java 微服务实践 - Spring Boot 系列(三)Web篇(中) 04Java 微服务实践 ...

最新文章

  1. 企业级java b2bc商城系统开源源码二次开发(二十一)springboot集成JMS
  2. UA MATH567 高维统计专题1 稀疏信号及其恢复6 随机设计矩阵下LASSO的估计误差
  3. 这三大“监控系统”是机房重中之重?
  4. 简单的hibernate环境搭建、自动生成model/配置/hibernate.xml配置文件
  5. 光纤收发器长距离的传输过程出现死机的解决方案
  6. **加密解密基础、PKI及SSL、创建私有CA**
  7. Codeblocks 开发板调试简单教程
  8. SparkSQL JSON数据操作(1.3-1.4)
  9. 字符串函数---atof()函数详解及实现
  10. 四大抓包神器,非常好用
  11. 硬盘分区无法打开,提示“文件或目录损坏且无法读取”
  12. dejavu项目笔记
  13. python人工智能应用锁_自兴人工智能——Python 第一课
  14. 保姆级教程,自建公网可访问的Git私有仓库
  15. Java内部类的四种分类以及作用
  16. 喷墨打印机如何批量制作二维码标签
  17. Android 之路68---动画基础
  18. 物流科技杂志物流科技杂志社物流科技编辑部2022年第11期目录
  19. 美术生学画画如何突破瓶颈期
  20. 业务需求、用户需求、功能需求、技术需求 环环相扣

热门文章

  1. 【学习笔记】多重背包相关优化——二进制优化/单调队列优化
  2. P3600-随机数生成器【dp,数学期望】
  3. P1983-车站分级【图论,记忆化dfs,构图】
  4. P1131-[ZJOI2007]时态同步【树形dp】
  5. SpringBoot整合kafka(实现producer和consumer)
  6. JavaFX图表(三)之折线图
  7. 小程序如何将wx.request里的数据传出去
  8. 【FTP】发布FTP服务器
  9. mybatis简单案例源码详细【注释全面】——Dao层接口(UserMapper.java)
  10. css实现一级下拉菜单