Plantre Plantre
首页
后端
技术
硬件
  • 前端文章

    • HTML
    • CSS
    • JavaScript
  • 技术

    • 技术文档
    • GitHub技巧
    • Nodejs
    • 博客搭建
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

plantre

一个后端开发者
首页
后端
技术
硬件
  • 前端文章

    • HTML
    • CSS
    • JavaScript
  • 技术

    • 技术文档
    • GitHub技巧
    • Nodejs
    • 博客搭建
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 虚拟化

    • 系统虚拟化

    • 容器虚拟化

      • docker命令
      • docker安装portainer图形化界面
      • var-run-docker.sock是什么
      • docker-compose.yml配置文件最全选项详解
      • Volume的类型和生命周期
      • docker更换镜像源
      • docker安装prometheus监控
      • docker安装node_exporter
      • docker安装cadvisor
      • micrometer是Exporter吗,有哪些常用的Exporter
      • docker安装gitea
      • docker安装nacos
      • docker安装anki-sync-server
    • 网络虚拟化

    • 存储虚拟化

    • 应用虚拟化

  • Git

  • 可视化

  • Linux

  • 远程串流等

  • SWF

  • 网络

  • 网站收藏
  • 技术
  • 虚拟化
  • 容器虚拟化
plantre
2025-05-14

micrometer是Exporter吗,有哪些常用的Exporter

Micrometer 并不是一个 Exporter,但它在监控生态中扮演了与 Exporter 密切相关的角色。以下是详细解析:


一、Micrometer 与 Exporter 的关系

  1. Micrometer 的核心定位
    Micrometer 是 Java 应用的 度量指标门面(Metrics Facade),其作用类似于日志领域的 SLF4J,提供统一的 API 来收集应用性能数据(如接口耗时、JVM 状态等),并适配到 Prometheus、Datadog 等监控系统中。它本身不直接作为 Exporter,但能生成符合 Exporter 要求的指标数据格式。

  2. Exporter 的定义
    Exporter 是向 Prometheus 提供监控样本数据的程序,需暴露 /metrics 端点供 Prometheus 拉取。Exporter 分为两类:
    • 直接采集型:应用原生支持 Prometheus 格式(如 Kubernetes、Etcd)。

    • 间接采集型:通过 Client Library(如 Prometheus 的 Go/Java 客户端)将非原生指标转换为 Prometheus 格式。

  3. Micrometer 与 Exporter 的协作
    Micrometer 通过注册表(如 PrometheusMeterRegistry)生成 Prometheus 可识别的文本格式数据。开发者在 Spring Boot 中配置 /actuator/prometheus 端点后,该端点即成为 Exporter。


二、常用 Exporter 分类与示例 1. 社区官方维护的 Exporter

类别 常用 Exporter 功能描述 适用场景
基础设施 Node Exporter 采集服务器硬件指标(CPU、内存、磁盘等) 物理机/虚拟机监控
数据库 MySQL Exporter、Redis Exporter 监控数据库连接数、查询性能、锁状态等 数据库性能优化与故障排查
消息队列 Kafka Exporter、RabbitMQ Exporter 统计消息堆积量、消费延迟、Broker 状态 消息中间件健康监控
HTTP 服务 Nginx Exporter、Apache Exporter 跟踪请求量、响应时间、错误率等 Web 服务性能分析
云服务 AWS CloudWatch Exporter 集成 AWS 资源(EC2、S3、Lambda)的指标 云原生环境监控

2. 基于 Micrometer 的指标生成 • Spring Boot 应用:通过 micrometer-registry-prometheus 依赖生成 Prometheus 格式指标,端点 /actuator/prometheus 即作为 Exporter。

• 自定义业务指标:使用 Micrometer 的 Counter、Timer 等 API 埋点,例如统计订单接口调用次数。

3. 其他常用工具型 Exporter

Exporter 特点
Blackbox Exporter 通过 ICMP/HTTP/TCP 探测服务可用性,适合网络层监控
JMX Exporter 采集 JVM 应用的 JMX 指标(如堆内存、GC 耗时),需附加到 Java 进程
cAdvisor 容器资源监控(CPU/内存/网络),与 Kubernetes 集成紧密

三、Exporter 使用场景对比

类型 优点 局限性 典型用例
直接采集型 零配置、与原生监控深度集成 仅限支持 Prometheus 的应用 Kubernetes、Etcd
间接采集型 兼容性强,支持任意系统的指标转换 需额外部署 Exporter 程序 MySQL、Nginx、自定义业务指标
Micrometer 生成 与 Java 应用无缝集成,开发成本低 仅适用于 Java 技术栈 Spring Boot 微服务监控

四、实践建议

  1. 选择 Exporter 的原则
    • 优先使用社区维护的 Exporter,确保稳定性和兼容性。

    • 对 Java 应用,通过 Micrometer 生成指标,减少重复开发。

  2. 监控数据规范化
    • 遵循 Prometheus 的指标命名规则(如 _count 后缀表示计数器)。

    • 为指标添加维度标签(如 region="us-east"),便于多维分析。

  3. 性能优化
    • 避免高频指标采集(如每秒更新 Gauge),防止 Prometheus 拉取压力过大。

    • 使用直方图(Histogram)或摘要(Summary)统计耗时分布,而非单独记录每次请求。


总结 • Micrometer 是生成监控指标的工具,其生成的端点(如 /actuator/prometheus)属于 Exporter。

• 常用 Exporter 覆盖基础设施、中间件、云服务等场景,开发者可根据技术栈和监控需求选择。

• 集成示例:Spring Boot + Micrometer + Prometheus 是 Java 微服务监控的黄金组合。

编辑 (opens new window)
上次更新: 2025/06/10, 09:18:05
docker安装cadvisor
docker安装gitea

← docker安装cadvisor docker安装gitea→

最近更新
01
集成loki
07-04
02
TCP的ESTABLISHED是什么意思
06-24
03
安装1panel
06-24
更多文章>
Theme by Vdoing | Copyright © 2025-2025 plantre | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式