全部產品
Search
文件中心

Application Real-Time Monitoring Service:使用Prometheus監控MicroMeter的Java應用

更新時間:Aug 29, 2024

本文介紹如何使用Prometheus監控MicroMeter的Java應用。

前提條件

已建立Java應用。

步驟一:將MicroMeter加入Java應用

說明

這裡以目前最常用的Spring Boot 2.x應用為例介紹。

  1. 將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倉庫尋找。

  2. 配置Acuator,在application.properties中添加相關配置暴露prometheus監測資料連接埠和範圍。

    management.server.port=8080
    management.endpoints.web.exposure.include=xxx, prometheus
  3. 在Project的pom.xml中添加MicroMeter依賴。

    <dependency>
      <groupId>io.micrometer</groupId>
      <artifactId>micrometer-registry-prometheus</artifactId>
      <version>x.y.z</version>
    </dependency>
    說明

    最新版本可到aliyun倉庫尋找。

  4. 在Project的pom.xml中添加MicroMeter JVM Extras依賴。

    <dependency>
        <groupId>io.github.mweirauch</groupId>
        <artifactId>micrometer-jvm-extras</artifactId>
        <version>0.2.2</version>
    </dependency>
    說明

    最新版本可到aliyun倉庫尋找。

  5. 配置MicroMeter JVM Extras,增加以下2個Spring Bean定義,以便暴露記憶體和線程相關指標。

    /* With Spring */
    @Bean
    public MeterBinder processMemoryMetrics() {
        return new ProcessMemoryMetrics();
    }
    
    @Bean
    public MeterBinder processThreadMetrics() {
        return new ProcessThreadMetrics();
    }
  6. 將Java應用部署到Container Service中ECS。

    根據業務情境,將Java業務應用部署到Container Service或ECS上。部署成功後,訪問應用監聽地址http://localhost:8080/actuator/prometheus(其中8080連接埠是您在application.properties中配置中指定的,根據實際連接埠值,修改此URL中的連接埠即可),驗證metrics暴露正確。

    image

步驟二:接入 MicroMeter

  1. 登入ARMS控制台在左側導航,選擇接入中心,然後在搜尋方塊中輸入並單擊MicroMeter

    image

  2. 在MicroMeter面板的開始接入頁簽選擇所屬環境類型完成接入,然後單擊確定

    image

    參數

    說明

    選擇所屬環境類型

    可以接入以下兩種服務環境:

    • Container Service環境

    • ECS(VPC)

    選擇叢集

    選擇目的地組群。

    Pod 標籤

    部署 MicroMeter 服務 Pod 的標籤(建議使用有特定標識的標籤)

    服務連接埠

    Java應用服務的連接埠,預設連接埠號碼會自動填滿。

    Metrics 採集路徑

    MicroMeter 指標透出路徑,預設路徑會自動填滿。

    使用 HTTPS 採集

    預設使用 HTTP 協議採集,如果服務支援 HTTPS 協議,且希望通過 HTTPS 協議來採集,則可以開啟此開關。

    Metric 採集間隔(單位/秒)

    可觀測監控 Prometheus 版採集指標資料的時間間隔,預設30秒。

步驟三:查看 MicroMeter 大盤資料

  1. 登入ARMS控制台在左側導覽列,單擊接入管理。在接入管理頁面的已接入環境頁簽中,選擇目標環境,在目標環境列表中,單擊目標環境名稱進入容器環境詳情頁面。

    image

  2. 組件管理頁簽下的組件類型地區,單擊MicroMeter,然後單擊大盤,即可查看所有的大盤名稱。

    image

  3. 單擊目標大盤名稱,查看對應的Grafana大盤。

    image

步驟四:配置 MicroMeter 監控警示

  1. 組件管理頁簽下的組件類型地區,單擊MicroMeter,然後單擊警示規則,即可查看預設建立的警示規則。

    image

  2. 您還可以根據業務需求新增警示規則,建立Prometheus警示規則的具體操作,請參見Prometheus警示規則