使用Prometheus監(jiān)控MicroMeter的Java應用
本文介紹如何使用Prometheus監(jiān)控MicroMeter的Java應用。
前提條件
已創(chuàng)建Java應用。
步驟一:將MicroMeter加入Java應用
這里以目前最常用的Spring Boot 2.x應用為例介紹。
將Spring Boot Actuator加入Java應用所在Project的pom.xml中添加Actuator依賴。
<dependency> <groupId>io.micrometer</groupId> <artifactId>micrometer-registry-prometheus</artifactId> <version>x.y.z</version> </dependency>
說明最新版本可到aliyun倉庫查找。
配置Acuator,在application.properties中添加相關配置暴露prometheus監(jiān)測數(shù)據(jù)端口和范圍。
management.server.port=8080 management.endpoints.web.exposure.include=xxx, prometheus
在Project的pom.xml中添加MicroMeter依賴。
<dependency> <groupId>io.micrometer</groupId> <artifactId>micrometer-registry-prometheus</artifactId> <version>x.y.z</version> </dependency>
說明最新版本可到aliyun倉庫查找。
在Project的pom.xml中添加MicroMeter JVM Extras依賴。
<dependency> <groupId>io.github.mweirauch</groupId> <artifactId>micrometer-jvm-extras</artifactId> <version>0.2.2</version> </dependency>
說明最新版本可到aliyun倉庫查找。
配置MicroMeter JVM Extras,增加以下2個Spring Bean定義,以便暴露內存和線程相關指標。
/* With Spring */ @Bean public MeterBinder processMemoryMetrics() { return new ProcessMemoryMetrics(); } @Bean public MeterBinder processThreadMetrics() { return new ProcessThreadMetrics(); }
將Java應用部署到容器服務中ECS。
根據(jù)業(yè)務場景,將Java業(yè)務應用部署到容器服務或ECS上。部署成功后,訪問應用監(jiān)聽地址
http://localhost:8080/actuator/prometheus
(其中8080端口是您在application.properties中配置中指定的,根據(jù)實際端口值,修改此URL中的端口即可),驗證metrics暴露正確。
步驟二:接入 MicroMeter
登錄ARMS控制臺。在左側導航,選擇接入中心,然后在搜索框中輸入并單擊MicroMeter。
在MicroMeter面板的開始接入頁簽選擇所屬環(huán)境類型完成接入,然后單擊確定。
參數(shù)
說明
選擇所屬環(huán)境類型
可以接入以下兩種服務環(huán)境:
容器服務環(huán)境
ECS(VPC)
選擇集群
選擇目標集群。
Pod 標簽
部署 MicroMeter 服務 Pod 的標簽(建議使用有特定標識的標簽)
服務端口
Java應用服務的端口,默認端口號會自動填充。
Metrics 采集路徑
MicroMeter 指標透出路徑,默認路徑會自動填充。
使用 HTTPS 采集
默認使用 HTTP 協(xié)議采集,如果服務支持 HTTPS 協(xié)議,且希望通過 HTTPS 協(xié)議來采集,則可以打開此開關。
Metric 采集間隔(單位/秒)
可觀測監(jiān)控 Prometheus 版采集指標數(shù)據(jù)的時間間隔,默認30秒。
步驟三:查看 MicroMeter 大盤數(shù)據(jù)
登錄ARMS控制臺。在左側導航欄,單擊接入管理。在接入管理頁面的已接入環(huán)境頁簽中,選擇目標環(huán)境,在目標環(huán)境列表中,單擊目標環(huán)境名稱進入容器環(huán)境詳情頁面。
在組件管理頁簽下的組件類型區(qū)域,單擊MicroMeter,然后單擊大盤,即可查看所有的大盤名稱。
單擊目標大盤名稱,查看對應的Grafana大盤。
步驟四:配置 MicroMeter 監(jiān)控告警
在組件管理頁簽下的組件類型區(qū)域,單擊MicroMeter,然后單擊告警規(guī)則,即可查看默認創(chuàng)建的告警規(guī)則。
您還可以根據(jù)業(yè)務需求新增告警規(guī)則,創(chuàng)建Prometheus告警規(guī)則的具體操作,請參見Prometheus告警規(guī)則。