目录
springbootmetrics是什么?一、引入依赖二、配置启用三、独立的web服务四、全局标签设置五、自定义指标收集六、推送or拉取指标引入依赖启用push模式spring boot metrics是什么?
针对应用监控指标暴露,spring boot有一套完整的解决方案,并且内置了好很多的指标收集器,如tomcat、jvm、cpu、kafka、DataSource、spring mvc(缺少直方图的数据)等。基于micrometer技术,几乎支持所有主流的监控服务的指标数据收集,这其中就包含了我们线上使用的Prometheus,这份指南旨在最快速接入boot的metrics功能,暴露prometheus的数据监控指标服务。
micrometer地址:https://micrometer.io/
一、引入依赖
implementation ("org.springframework.boot:spring-boot-starter-actuator") implementation ("io.micrometer:micrometer-registry-prometheus:1.6.1") implementation ("io.micrometer:micrometer-core:1.6.1")
actuator是spring boot中负责运维功能的包,这里主要是通过它来暴露和管理metrics接口的。其他两个依赖是为了包兼容引入的,在sprinr boot2.x中,actuator中默认引入的prometheus支持包存在兼容性问题,如果你的环境不存在兼容性问题,可以不用引入下面两个依赖。
二、配置启用
通过如下的配置,来开启prometheus的端点接口服务
management.endpoints.web.exposure.include=prometheus
开启服务后,会暴露/actuator/prometheus端点接口服务。
在浏览器中,输入http://localhost:8080/actuator/prometheus。可以看到内置的指标收集器收集到的监控指标
三、独立的web服务
默认情况下,/actuator/prometheus端点服务跟随应用的web容器一起发布,但是当我们的web服务面向公网需要授权认证时,可以使用如下配置启用独立的容器暴露服务
management.server.port=8081
四、全局标签设置
在metrics监控系统设计中,tag用来标记区分一组指标集。比如我们在监控grpc时,servicename就是是监控指标的其中一个tag。有的时候为了区分环境和应用,我们会设置一些全局的tag:
management.metrics.tags.application = ${spring.application.name} management.metrics.tags.region = bj
如上配置,我们添加了一个应用的名字和一个区域的tag。这种配置是全局的。虽然grpc的组件可能只记录了servicename,但是最终数据呈现时,也会带上全局配置的tag
五、自定义指标收集
spring boot所有的指标最终都是通过MeterRegistry来注册的,这个实例被spring托管,所以你可以在spring的上下文中注入这个实例,结合micrometer指标定义,自定义自己的监控指标
六、推送or拉取指标
目前,我们线上是通过k8s的monitoring.coreos.com/v1 api定义指定prometheus主动拉取应用pod的监控指标信息,主要是因为之前的metrics系统是基于prometheus client模式暴露的。在基于spring boot的metrics系统中,主动推送数据的模式非常容易实现,这里需要prometheus-gateway支持
引入依赖
implementation("io.prometheus:simpleclient_pushgateway")
启用push模式
#开启prometheus的数据推送模式 management.metrics.export.prometheus.pushgateway.enabled=true #prometheus服务端地址 management.metrics.export.prometheus.pushgateway.base-url=localhost:9091 #推送数据的频率,默认1m(单位分钟) management.metrics.export.prometheus.pushgateway.push-rate=1m #在jvm关闭之前将数据推送出去 management.metrics.export.prometheus.pushgateway.shutdown-operation=push
以上就是spring boot metrics监控指标使用教程的详细内容,更多关于springbootmetrics监控指标教程的资料请关注脚本之家其它相关文章!
X 关闭
X 关闭
- 15G资费不大降!三大运营商谁提供的5G网速最快?中国信通院给出答案
- 2联想拯救者Y70发布最新预告:售价2970元起 迄今最便宜的骁龙8+旗舰
- 3亚马逊开始大规模推广掌纹支付技术 顾客可使用“挥手付”结账
- 4现代和起亚上半年出口20万辆新能源汽车同比增长30.6%
- 5如何让居民5分钟使用到各种设施?沙特“线性城市”来了
- 6AMD实现连续8个季度的增长 季度营收首次突破60亿美元利润更是翻倍
- 7转转集团发布2022年二季度手机行情报告:二手市场“飘香”
- 8充电宝100Wh等于多少毫安?铁路旅客禁止、限制携带和托运物品目录
- 9好消息!京东与腾讯续签三年战略合作协议 加强技术创新与供应链服务
- 10名创优品拟通过香港IPO全球发售4100万股 全球发售所得款项有什么用处?