【监控系统】-acturator和micrometer

一、介绍

actuator 是真正去采集数据的模块
Micrometer 更像是一个适配器,将 actuator 采集到的数据适合给各种监控工具。

二、Acturator

HTTP 和 JMX

(一)监控方式

1. HTTP

EndPoint的三种请求方式:
        @ReadOperation	       GET
        @WriteOperation	       POST
        @DeleteOperation	   DELETE

2. JMX监控

Java Management Extensions 管理拓展

架构设计

资源层:该层包含 MBean 及其可管理的资源,提供了实现 JMX 技术可管理资源的规范。
代理层:JMX核心。 MBean和应用程序间的中介。
远程管理层:能够让应用程序远程通过 Connector 和 Adapter 访问 MBean Server。
在这里插入图片描述

Mbean

含义:Managed bean,表示被管理的资源

分类:
  标准MBean:命名以 MBean 结尾 / 实现接口
  动态MBean:必须实现一个指定的接口
  ~~模型MBean~~:属于动态MBeans,这类MBean依靠基础数据类型来实现通用管理
  ~~开放MBean~~:属于动态MBeans,是完全可配置的,在运行期间进行自我声明~~ 
JConsole

通过 RMI 连接到 MBean Server

功能:实时热更新

通过JConsole修改日志的级别,输出不同的日志信息。logback实现了JMX
(Acturator的管理台SpringBoot Admin也是这个实现原理)

Jolokia

JMX监控最方便的方法是使用Jolokia,基于Http JMX管理Mbean,可替代JSR-160连接器。

<dependency>
     <groupId>org.jolokia</groupId>
     <artifactId>jolokia-core</artifactId>
     <version>1.3.1</version>
 </dependency>

Jolokia 是采用无类型、轻量级的 Json 传输数据。
Agent 模式:Agent调用本地MBeanServer 暴露 json 接口
在这里插入图片描述
在这里插入图片描述

(二)指标

指标名含义HTTP端点
actuator所有EnPoint的列表
(需引入spring HATEOAS)
health服务健康度http://localhost:8080/actuator/health
metrics指标http://localhost:8080/metrics
mappings全部的URIhttp://localhost:8080/mappings
env全部环境属性
beans全部的Bean
traceHTTP请求跟踪信息
shutdown关闭当前应用默认关闭

(三)自定义EndPoint

参考代码: 张从龙-gitee

(1)编写配置类
(2)定义EndPoint

(四)漏洞

开启权限认证

三、MicroMeter

<dependency>
    <groupId>io.micrometer</groupId>
    <artifactId>micrometer-registry-prometheus</artifactId>
    <scope>runtime</scope>
</dependency>

集成Grafana

Grafana Dashboards图表模板「JVM(Micrometer)」(ID为4701)

四、参考资料

Prometheus入门教程(六):Spring Boot Actuator 实现应用监控
Micrometer 官方文档

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: Micrometer-registry-prometheus是一个用于将Micrometer指标导出到Prometheus的注册表。它允许开发人员使用Micrometer来收集应用程序的度量,并将这些度量导出到Prometheus,以便进行监视和分析。Micrometer-registry-prometheus提供了一种简单的方法来将Micrometer指标与Prometheus集成,使开发人员可以轻松地监视和分析应用程序的性能。 ### 回答2: Micrometer是一个metrics库,可以将metrics与不同的监控系统(如Prometheus)集成。Micrometer开发人员可以更容易地收集和监控系统的metrics数据,以便更好地了解系统的运行状态和性能,以及及早发现可能存在的问题。 Prometheus是一个开源的监控系统和时序数据库,它可以通过拉取方式(pull)收集和存储监控数据,并提供强大的查询和可视化功能。Micrometer使用Registry来对接不同的监控系统,比如在使用Prometheus时,可以通过Micrometer-registry-prometheus将Micrometer的metrics数据导入到Prometheus中。 Micrometer-registry-prometheus扮演着Micrometer metrics在Prometheus中注册的角色,它可以通过一系列API方法对Micrometer的metrics进行注册和导出。这些API方法包括:Gauge,Counter,Timer,DistributionSummary和LongTaskTimer等。它还支持通过tags对metrics数据进行不同的分类和聚合,以便更好地展示和分析数据。 总之,Micrometer-registry-prometheus提供了一种简单,方便,可靠的方法来将Micrometer的metrics数据导入到Prometheus中,以便更好地监控和了解系统运行状态和性能。 ### 回答3: Micrometer是一种Java度量度量库,用于在应用程序中收集指标和度量,以及推送到不同的监视系统中,以便进行分析和可视化。Micrometer提供了一系列通用的度量API,并支持集成到众多开源监控系统,比如Prometheus、Graphite、InfluxDB等等。 Prometheus是一种基于开源的监控系统,采用拉模型(pull model)来采集和存储时间序列数据,并根据用户定义的规则定期进行数据聚合和警报。Prometheus提供了强大的查询语言和可扩展的图形化界面,以便用户更好地查看和理解系统的性能和行为。 Micrometer与Prometheus集成,允许开发人员捕获细粒度的指标和计数器,并在Prometheus中公开指标,以便进行监视和分析。此外,Micrometer提供了许多其他有用的特性,比如对分布式跟踪的支持,以及数据导出和聚合处理。 总的来说,Micrometer-registry-prometheus是一种强大的Java度量和监控解决方案,能够帮助开发人员轻松地收集、公开和分析指标和度量,以便更好地处理和维护应用程序的性能和健康状况。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

机智的路易

用爱发电是走不远的

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值