阿里云 API JDK 使用

來源: Hoody
作者:Hoody
時間:2021-01-29
17933
通過阿里云API 獲取ECS 系統(tǒng)狀態(tài)。

Hippopx (4).jpg

通過阿里云API 獲取ECS 系統(tǒng)狀態(tài)

阿里云提供了非常完善的API SDK 和文檔

OpenAPI Explorer 快速檢索、可視化調(diào)試 API、在線命令行工具、同步動態(tài)生成可執(zhí)行 SDK Example 代碼 Java SDK使用手冊 for 云監(jiān)控 API 網(wǎng)關錯誤代碼表 檢查API 錯誤信息

Aliyun JDK的 使用

1. 添加依賴

根據(jù)需要使用到的API接口,添加對應的包.最新版本需要自己去 JDK 頁面查看

aliyun-java-sdk-core 核心,必須引入

aliyun-java-sdk-cms 云監(jiān)控API(獲取CUP/MEM等信息,需要訪問)

aliyun-java-sdk-ecs ECS API(可以創(chuàng)建,查詢ECS 實例,我用來查詢名下的所有實例) pom.xml

      <dependency>

          <groupId>com.aliyun</groupId>

          <artifactId>aliyun-java-sdk-core</artifactId>

          <version>4.4.2</version>

      </dependency>

      <dependency>

          <groupId>com.aliyun</groupId>

          <artifactId>aliyun-java-sdk-cms</artifactId>

          <version>7.0.4</version>

      </dependency>

      <dependency>

          <groupId>com.aliyun</groupId>

          <artifactId>aliyun-java-sdk-ecs</artifactId>

          <version>4.16.11</version>

      </dependency>

2. 申請AccessKey

訪問 AccessKey管理頁面 創(chuàng)建成功后會獲得最重要的數(shù)據(jù)AccessKeyId 和 AccessKeySecret 注意保存CSV文件,這個數(shù)據(jù)只會顯示一次.別直接關閉提示窗

3. 創(chuàng)建請求

OpenAPI Explorer 可以生成簡單SDK源碼,非常適合用來測試 這里我創(chuàng)建一個查詢 DescribeMetricLastDemo.java

import com.aliyuncs.DefaultAcsClient;

import com.aliyuncs.IAcsClient;

import com.aliyuncs.exceptions.ClientException;

import com.aliyuncs.exceptions.ServerException;

import com.aliyuncs.profile.DefaultProfile;

import com.google.gson.Gson;

import java.util.*;

import com.aliyuncs.cms.model.v20190101.*;

public class DescribeMetricLastDemo {

    public static void main(String[] args) {

    /**  創(chuàng)建配置文件

     *   regionId: 你的ECS的地域信息,我的是在華東杭州所以是"cn-hangzhou",可以在API頁面查到其他地域的字符串,

         *   accessKeyId 和 accessSecret 則是上一步申請的字符串

     */

        DefaultProfile profile = DefaultProfile.getProfile("<regionId>", "<accessKeyId>", "<accessSecret>");

    // 創(chuàng)建發(fā)送請求的客戶端

        IAcsClient client = new DefaultAcsClient(profile);

    //我需要查詢指定監(jiān)控對象的最新監(jiān)控數(shù)據(jù)

    //根據(jù)文檔,我需要使用 DescribeMetricLastRequest 進行請求,基本上JDK里面,API名字+Request就是需要調(diào)用的對象

        DescribeMetricLastRequest request = new DescribeMetricLastRequest();

    //命名空間,表明監(jiān)控數(shù)據(jù)所屬產(chǎn)品,如 “acs_ecs_dashboard”,“acs_rds_dashboard”等

        request.setNamespace("acs_ecs_dashboard");

    //監(jiān)控項名稱。 根據(jù)"預設監(jiān)控項參考",CUP 信息對應的是 CPUUtilization

        request.setMetricName("CPUUtilization");

        try {

        //發(fā)送請求,得到對應response

            DescribeMetricLastResponse response = client.getAcsResponse(request);

            System.out.println(new Gson().toJson(response));

        } catch (ServerException e) {

            e.printStackTrace();

        } catch (ClientException e) {

            System.out.println("ErrCode:" + e.getErrCode());

            System.out.println("ErrMsg:" + e.getErrMsg());

            System.out.println("RequestId:" + e.getRequestId());

        }

    }

}

阿里云API JDK 小結(jié):

API名稱 + Request/Response就是需要使用的對象

使用都是分成2步,創(chuàng)建Request然后設置參數(shù),然后通過IAcsClient發(fā)送

IAcsClient 創(chuàng)建后可以多次調(diào)用

立即登錄,閱讀全文
版權說明:
本文內(nèi)容來自于Hoody,本站不擁有所有權,不承擔相關法律責任。文章內(nèi)容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權,請聯(lián)系管理員(zzx@kchuhai.com)刪除!
掃碼登錄
打開掃一掃, 關注公眾號后即可登錄/注冊
加載中
二維碼已失效 請重試
刷新
賬號登錄/注冊
個人VIP
小程序
快出海小程序
公眾號
快出海公眾號
商務合作
商務合作
投稿采訪
投稿采訪
出海管家
出海管家