dynamic-tp采集类型micrometer——Prometheus接入流程

528 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第29天,点击查看活动详情

动态监控线程池dynamic-tp框架提供了三种监控数据采集方式,通过 collectType 属性配置监控指标采集类型,默认 logging。

  • Logging:线程池指标数据会以 Json 格式输出到指定的文件里
  • Micrometer:采用监控门面,通过引入相关 Micrometer 依赖采集到相应的存储平台里(如 Prometheus,InfluxDb...)
  • 暴露 Endpoint端点,可以通过 http 方式实时获取指标数据

如果采集类型选择micrometer,引入prometheus(也可以用其他) 对应依赖,job配置后prometheus管理台看到如下图所示,说明已经开始正常采集指标配置。

435f0a69790946f8bff7761c40a0a0db~tplv-k3u1fbpfcp-zoom-1.png

micrometer接入流程

第一步.项目中引入 micrometer-prometheus 依赖
  <dependency>
      <groupId>io.micrometer</groupId>
      <artifactId>micrometer-registry-prometheus</artifactId>
  </dependency>
第二步.配置文件中开启micrometer数据采集
   enabledCollect: true
   collectorType: micrometer
第三步.开启prometheus指标采集端点
management:
  metrics:
    export:
      prometheus: 
        enabled: true
  endpoints:
    web:
      exposure:
        include: '*'   # 测试使用,线上不要用*,按需开启
第四步.安装Prometheus

Prometheus 服务端负责数据的收集,因此我们应该首先安装并运行 Prometheus Server。 从 prometheus.io/download/ 找到最新版本的Prometheus Sevrer软件包。下载后解压,可以看到如下目录:

image.png

其中 data 目录是数据的存储路径,也可以通过运行时的 -- storage.tsdb.path="data/" 命令另行指定。(初次解压没有执行过是没有data目录)

prometheus.yml 是 Prometheus的配置文件,prometheus 是运行的命令。

启动prometheus服务,其会默认加载当前路径下的prometheus.yaml文件。当然我们也可以手动指定配置文件地址:./prometheus --config.file=prometheus.yml

第五步.配置prometheus数据采集job

我们配置一下 Prometheus 的配置文件,让 Prometheus 服务器定时去业务数据源拉取数据。编辑prometheus.yml 并在 scrape_configs 节点下添加以下内容:

scrape_configs:
  - job_name: 'prometheus'
    static_configs:
      - targets: ['192.168.2.104:9090']
  # 采集node exporter监控数据
  - job_name: 'node'
    static_configs:
      - targets: ['192.168.2.104:5080', '192.168.2.105: 5080', '192.168.2.106: 5080']
第六步.启动prometheus管理台

job配置后prometheus管理台看到如下图所示,说明已经开始正常采集指标配置。

435f0a69790946f8bff7761c40a0a0db~tplv-k3u1fbpfcp-zoom-1.png

第七步.然后就是配置grafana数据可视化

如果需要配置grafana数据可视化,首先新建一个data source数据源,然后配置对应的dashboard监控面板pannel配置Json,到这里监控就搭建起来了,其实也很简单,然后就可以实时监控线程池数据指标变动了。pannel的具体配置可以参考对应教程,本节不做介绍。

68747470733a2f2f70332d6a75656a696e2e62797465696d672e636f6d2f746f732d636e2d692d6b3375316662706663702f65633561376431613331653734313862613564396131303161356330333832367e74706c762d6b3375316662706663702d7a6f6f6d2d31.png