文档章节

Spring 官方出品应用监控度量指标门面类库Micrometer介绍

码农小胖哥
 码农小胖哥
发布于 09/16 21:22
字数 776
阅读 45
收藏 3

前言

上篇文章 Spring Boot 2.x 中的 Actuator 我们提到了在Spring Boot Actuator中的metirc指标。在Spring Boot 2.x中 官方引入了新的监控门面(facade)类库Micrometer。如果你对门面不是很清楚,你应该听说过SLF4J库,它可以对log4j2,logback等日志类库进行兼容。同样的Micrometer也对Actuator的指标功能进行了门面适配。本文将对其进行简单介绍。来帮你来了解它。

作用

Micrometer的作用就是提供一个度量指标的客户端门面。你的Spring Boot 应用集成了它之后。可以对市面上流行的一些应用监控进行适配。帮助这些监控采集、格式化数据。这些监控包括:AppOptics, Azure Monitor,Netflix Atlas, CloudWatch, Datadog,Dynatrace,Elastic, Ganglia, Graphite,Humio, Influx/Telegraf,JMX,KairosDB, New Relic,Prometheus, SignalFx, Google Stackdriver, StatsD,Wavefront。作为度量门面类库,Micrometer允许您使用供应商中立的界面使用维度指标来检测代码,并作为最后一步决定监控系统。使用Micrometer检测核心库代码允许将库包含在将度量标准发送到不同后端的应用程序中。 而且拥有开箱即用的缓存,类加载器,垃圾收集,处理器利用率,线程池以及更多针对可操作洞察的解决方案。特别是Spring Boot 2.x对其进行高度的支持。

依赖引入

依赖引入取决于我们监控平台的选择,格式为:micrometer-registry-{monitorsystem}。例如我们使用Prometheus :

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

在Spring Boot 2.x 引入以上依赖后,就会自动启用相关的配置。每一种监控系统的配置是不一样的,可查看相关的文档:入口

最佳实践

其实引入了依赖后我们通过actuator暴露你需要暴露的端点之后,对应的Micrometer就会自动配置。但是为了方便监控 建议我们对应用配置一些特殊的tag来更加准确的描述我们的监控实例:


@Bean
MeterRegistryCustomizer<MeterRegistry> metricsCommonTags() {
  return registry -> registry.config().commonTags("application", "MYAPPNAME","instance","YOURINSTANCE");
}

以上的tag组合可以更好的来标识你的应用,特别在集群当中。

总结

Pivotal 提供的这个监控门面非常强大,而且简单,这个其实是面向运维的一个类库,对于开发者来说可定制的东西其实不多,做好配置就可以使用。而且使用该门面进行监控一般用于微服务,或者一些云原生应用集群。对于独立应用来说 个人推荐使用另一个轻量级监控工具——Spring Boot Admin 。

关注公众号:码农小胖哥 获取更多资讯

© 著作权归作者所有

码农小胖哥

码农小胖哥

粉丝 39
博文 78
码字总数 84367
作品 1
郑州
程序员
私信 提问
Spring Boot 2.x 中的 Actuator

前言 Spring Boot 提供了很多开箱即用的starter,其中有一款非常特别的starter——actuator 。它是用来对Spring Boot 应用进行监控、指标采集、管理,并提供一些很有用的端点(endpoint)来实...

码农小胖哥
09/11
86
0
Micrometer 0.6.3 发布,指标监控工具

Micrometer 0.6.3 发布了。Micrometer 是一个监控指标的度量类库。 更新内容: First successful release under group. Spring 4/Boot 1 support has been split into a project, and Sprin......

淡漠悠然
2017/07/24
1K
1
Micrometer 1.1.1 发布,指标监控工具

Micrometer 是一款监控指标的度量类库,可以让您在没有供应商锁定的情况下对 JVM 的应用程序代码进行调整。 增强 Auto-configure Kafka consumer metrics in micrometer-spring-legacy. Rem...

淡漠悠然
2018/12/18
1K
0
Micrometer 0.11.0 发布,指标监控工具

Micrometer 0.11.0 已发布。Micrometer 是一个监控指标的度量类库。 本次更新内容: Disable CircleCI release builds for now Add missing dot Scale long task timers to the implementati......

淡漠悠然
2017/09/14
453
0
Spring Batch 4.2 新特性

Spring Batch 4.2 的发行版主要增强了下面的改进: 使用 Micrometer 来支持批量指标(batch metrics) 支持从 Apache Kafka topics 读取/写入(reading/writing) 数据 支持从 Apache Avro ...

honeymoose
09/11
50
0

没有更多内容

加载失败,请刷新页面

加载更多

移动深度学习:人工智能的深水区

人工智能技术经历6年的快速发展,重新定义了很多行业的用户体验,而这仅是开始。 随着5G商用大规模落地,以及智能手机硬件性能越来越强、AIoT设备的快速普及,基于云-边缘-端算法和算力结构的...

博文视点Bv
15分钟前
2
0
vim 分屏 操作

$vim -On file file2 #大写O垂直分屏打开文件 $vim -on file file2 #小写水平打开 # n 表示分屏数,直接n等于文件个数 如果n小于文件,按顺序打开前面的n个,如果大于,打开空编辑页面 分屏快...

突突突酱
17分钟前
2
0
MySQL/Mariadb设置中文字符集(linux)

编辑/etc/my.cnf,添加以下设置 [mysql]default-character-set=utf8[mysqld]character_set_server=utf8[mysqld.safe]default-character-set=utf8[client]default-chara...

编程老陆
20分钟前
2
0
关于linux常用的挂载命令

挂载:就把一块磁盘(可以是光盘,U盘)绑定到一个空目录下面 一般情况下会挂载到mnt目录下面 挂载光盘(把光盘挂载到/mnt/cdrom这个目录中) mount -t iso9660 /dev/cdrom /mnt/cdrom 退出当前目录...

chenhongjiang
21分钟前
2
0
如何分享brain内容外部共享?几个需要知道的TheBrain问答

TheBrain(点击下载)是一款与众不同的思维导图软件,其所有信息通过一个又一个的节点进行联系,最终形成一个杂而不乱的网状结构。从头开始设计,让您捕获您的想法和信息在一个网络的联想,匹...

mnrssj
21分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部