

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# IDT 用量指標
<a name="idt-usage-metrics"></a>

如果您提供具有必要許可的 AWS 登入資料， 會 AWS IoT Device Tester 收集並提交用量指標給 AWS。這是選擇加入功能，用於改善 IDT 功能。IDT 會收集下列資訊：
+ 用來執行 IDT 的 AWS 帳戶 ID
+  用於執行測試的 IDT AWS CLI 命令
+ 執行的測試套件
+ {{<device-tester-extract-location>}} 資料夾的測試套件
+ 在裝置集區中設定的裝置數量
+ 測試案例名稱和執行時間
+ 測試結果資訊，例如測試是否通過、失敗、發生錯誤或被略過
+ 測試的產品功能
+ IDT 結束行為，例如非預期或提早結束 

 IDT 傳送的所有資訊也會記錄到 `{{<device-tester-extract-location>}}/results/{{<execution-id>}}/` 資料夾中`metrics.log`的檔案。您可以檢視日誌檔案，以查看在測試執行期間收集的資訊。只有在您選擇收集用量指標時，才會產生此檔案。

若要停用指標集合，您不需要採取其他動作。只要不要存放您的 AWS 登入資料，而且如果您有存放的 AWS 登入資料，請勿設定 `config.json` 檔案來存取這些登入資料。

## 設定您的 AWS 登入資料
<a name="configure-aws-creds-for-metrics"></a>

如果您還沒有 AWS 帳戶，則必須[建立一個](#idt-metrics-aws-account)。如果您已經有 AWS 帳戶，您只需要為您的帳戶[設定必要的許可](#idt-metrics-permissions)，以允許 IDT AWS 代表您將用量指標傳送至 。

### 步驟 1：建立 AWS 帳戶
<a name="idt-metrics-aws-account"></a>

在此步驟中，建立和設定 AWS 帳戶。如果您已擁有 AWS 帳戶，請跳到 [步驟 2：設定 IDT 的許可](#idt-metrics-permissions)。

如果您沒有 AWS 帳戶，請完成下列步驟來建立一個。

**註冊 AWS 帳戶**

1. 開啟 [https://portal.aws.amazon.com/billing/signup](https://portal.aws.amazon.com/billing/signup)。

1. 請遵循線上指示進行。

   部分註冊程序需接收來電或簡訊，並在電話鍵盤輸入驗證碼。

   當您註冊 時 AWS 帳戶，*AWS 帳戶根使用者*會建立 。根使用者有權存取該帳戶中的所有 AWS 服務 和資源。作為安全最佳實務，請將管理存取權指派給使用者，並且僅使用根使用者來執行[需要根使用者存取權的任務](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks)。

若要建立管理員使用者，請選擇下列其中一個選項。


****  

| 選擇一種管理管理員的方式 | 到 | 根據 | 您也可以 | 
| --- | --- | --- | --- | 
| 在 IAM Identity Center (建議) | 使用短期憑證存取 AWS。這與安全性最佳實務一致。有關最佳實務的資訊，請參閱 *IAM 使用者指南*中的 [IAM 安全最佳實務](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-users-federation-idp)。 | 請遵循 AWS IAM Identity Center 使用者指南的[入門](https://docs.aws.amazon.com//singlesignon/latest/userguide/getting-started.html)中的說明。 | 在 AWS Command Line Interface 使用者指南中設定 [AWS CLI 以使用 來設定 AWS IAM Identity Center](https://docs.aws.amazon.com//cli/latest/userguide/cli-configure-sso.html)程式設計存取。 | 
| 在 IAM 中 (不建議使用) | 使用長期憑證存取 AWS。 | 請遵循《IAM 使用者指南》中[建立 IAM 使用者以進行緊急存取](https://docs.aws.amazon.com/IAM/latest/UserGuide/getting-started-emergency-iam-user.html) 的指示。 | 請依照《IAM 使用者指南》中的[管理 IAM 使用者的存取金鑰](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_credentials_access-keys.html)設定以程式設計方式存取。 | 

### 步驟 2：設定 IDT 的許可
<a name="idt-metrics-permissions"></a>

在此步驟中，設定 IDT 用來執行測試和收集 IDT 用量資料的許可。您可以使用 AWS 管理主控台 或 AWS Command Line Interface (AWS CLI) 來建立 IAM 政策和 IDT 的使用者，然後將政策連接到使用者。
+ [設定 IDT (主控台) 的許可](#idt-metrics-permissions-console)
+ [步驟 2：設定 IDT (AWS CLI) 的許可](#idt-metrics-permissions-cli)<a name="idt-metrics-permissions-console"></a>

**設定 IDT (主控台) 的許可**

請依照下列步驟使用主控台來設定 IDT for AWS IoT Greengrass的許可。

1. 登入 [IAM 主控台](https://console.aws.amazon.com/iam)。

1. 建立客戶受管政策，該政策授與建立具有特定許可之角色的許可。

   1. 在導覽窗格中，選擇**政策**，然後選擇**建立政策**。

   1. 在 **JSON** 標籤上，用以下政策取代預留位置內容。

------
#### [ JSON ]

****  

      ```
      {
          "Version":"2012-10-17",		 	 	 
          "Statement": [
              {
                  "Effect": "Allow",
                  "Action": [
                      "iot-device-tester:SendMetrics"
                  ],
                  "Resource": "*"
              }
          ]
      }
      ```

------

   1. 選擇**檢閱政策**。

   1. 對於**名稱**，輸入 **IDTUsageMetricsIAMPermissions**。在 **Summary (摘要)** 下，檢閱您的政策所授與的許可。

   1. 選擇**建立政策**。

1. 建立 IAM 使用者並將許可連接到使用者。

   1. 建立 IAM 使用者。請遵循《[IAM 使用者指南》中建立 IAM 使用者 （主控台）](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_create.html#id_users_create_console) 的步驟 1 到 5。 **如果您已建立 IAM 使用者，請跳至下一個步驟。

   1. 將許可連接至您的 IAM 使用者：

      1. 在 **Set permissions (設定許可)** 頁面上，選擇 **Attach existing policies directly (直接連接現有的政策)**。

      1. 搜尋您在上一個步驟中建立的 **IDTUsageMetricsIAMPermissions** 政策。選取核取方塊。

   1. 選擇下**一步：標籤**。

   1. 選擇 **Next: Review (下一步：檢閱)** 以檢視選擇的摘要。

   1. 選擇 **Create user** (建立使用者)。

   1. 若要檢視使用者的存取金鑰 (存取金鑰 ID 和私密存取金鑰)，請選擇密碼和存取金鑰旁的 **Show (顯示)**。若要儲存存取金鑰，請選擇 **Download.csv**，並將檔案儲存到安全的位置。您稍後會使用此資訊來設定您的 AWS 登入資料檔案。

 <a name="idt-metrics-permissions-cli"></a>

**步驟 2：設定 IDT (AWS CLI) 的許可**

請依照下列步驟使用 AWS CLI 來設定 IDT for 的許可 AWS IoT Greengrass。

1. 如果尚未安裝，請在電腦上安裝和設定 AWS CLI 。請遵循*AWS Command Line Interface 《 使用者指南*》中的[安裝 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html) 中的步驟。
**注意**  
 AWS CLI 是開放原始碼工具，可用來與命令列 Shell 中的 AWS 服務互動。

1. 建立下列客戶受管政策，授予管理 IDT 和 AWS IoT Greengrass 角色的許可。

------
#### [ Linux or Unix ]

   ```
   aws iam create-policy --policy-name IDTUsageMetricsIAMPermissions --policy-document '{
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "iot-device-tester:SendMetrics"
               ],
               "Resource": "*"
           }
       ]
   }'
   ```

------
#### [ Windows command prompt ]

   ```
   aws iam create-policy --policy-name IDTUsageMetricsIAMPermissions --policy-document
                                           '{\"Version\": \"2012-10-17\",		 	 	  \"Statement\": [{\"Effect\": \"Allow\", \"Action\": [\"iot-device-tester:SendMetrics\"], \"Resource": \"*\"}]}'
   ```

**注意**  
此步驟包含 Windows 命令提示字元範例，因為它使用的 JSON 語法與 Linux、macOS 或 Unix 終端機命令不同。

------
#### [ PowerShell ]

   ```
   aws iam create-policy --policy-name IDTUsageMetricsIAMPermissions --policy-document '{
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "iot-device-tester:SendMetrics"
               ],
               "Resource": "*"
           }
       ]
   }'
   ```

------

1. 建立 IAM 使用者並連接 IDT for 所需的許可 AWS IoT Greengrass。

   1. 建立 IAM 使用者。

      ```
      aws iam create-user --user-name {{user-name}}
      ```

   1. 將您建立`IDTUsageMetricsIAMPermissions`的政策連接至您的 IAM 使用者。將 {{user-name}} 取代為您的 IAM 使用者名稱，並將 命令中的 {{<account-id>}} 取代為您的 ID AWS 帳戶。

      ```
      aws iam attach-user-policy --user-name {{user-name}} --policy-arn arn:aws:iam::{{<account-id>}}:policy/IDTGreengrassIAMPermissions
      ```

1. 為使用者建立私密存取金鑰。

   ```
   aws iam create-access-key --user-name {{user-name}}
   ```

   將輸出儲存在安全的位置。您稍後會使用此資訊來設定您的 AWS 登入資料檔案。

## 提供 AWS 登入資料給 IDT
<a name="idt-metrics-creds"></a>

若要允許 IDT 存取您的 AWS 登入資料並提交指標 AWS，請執行下列動作：

1. 將 IAM 使用者的 AWS 登入資料儲存為環境變數或儲存在登入資料檔案中：

   1. 若要使用環境變數，請執行下列命令。

------
#### [ Linux or Unix ]

      ```
      export AWS_ACCESS_KEY_ID={{access-key}}
      export AWS_SECRET_ACCESS_KEY={{secret-access-key}}
      ```

------
#### [ Windows Command Prompt (CMD) ]

      ```
      set AWS_ACCESS_KEY_ID={{access-key}}
      set AWS_SECRET_ACCESS_KEY={{secret-access-key}}
      ```

------
#### [ PowerShell ]

      ```
      $env:AWS_ACCESS_KEY_ID="{{access-key}}"
      $env:AWS_SECRET_ACCESS_KEY="{{secret-access-key}}"
      ```

------

   1. 若要使用登入資料檔案，請將下列資訊新增至`~/.aws/credentials`檔案。

      ```
      [profile-name]
      aws_access_key_id={{access-key}}
      aws_secret_access_key={{secret-access-key}}
      ```

1. 設定 `config.json` 檔案的 `auth`區段。如需詳細資訊，請參閱[（選用） 設定 config.json](set-custom-idt-config.md#config-json-custom)。