

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

# 使用 CloudWatch 指標監控 WorkSpaces
<a name="cloudwatch-metrics"></a>

WorkSpaces 與 Amazon CloudWatch 整合，因此您可收集和分析效能指標。您可以使用 CloudWatch 主控台、CloudWatch 命令列界面或以程式設計方式使用 CloudWatch API 來監控這些指標。CloudWatch 也可讓您設定達到指標的指定閾值時的警示。

如需使用 CloudWatch 和警示的詳細資訊，請參閱 [Amazon CloudWatch 使用者指南](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/)。

**必要條件**  
若要取得 CloudWatch 指標，請啟用 `us-east-1`  區域中 `AMAZON` 子集上連接埠 443 的存取權。如需詳細資訊，請參閱 [WorkSpaces Personal 的 IP 位址和連接埠要求](workspaces-port-requirements.md)。

**Topics**
+ [WorkSpaces 指標](#wsp-metrics)
+ [WorkSpaces 指標的維度](#wsp-metric-dimensions)
+ [監控範例](#monitoring_example)

## WorkSpaces 指標
<a name="wsp-metrics"></a>

`AWS/WorkSpaces` 命名空間包含下列指標。


| 指標 | 說明 | 維度 | 統計資料 | 單位 | 
| --- | --- | --- | --- | --- | 
| `Available` | 運作狀態良好的 WorkSpaces 數目。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `Unhealthy` | 運作狀態不佳的 WorkSpaces 數量。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `Stopped` | 已停止的 WorkSpaces 數目。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `Maintenance` | 正在維護的 WorkSpaces 數目。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `ConnectionAttempt`1 | 連線嘗試次數。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `ConnectionSuccess`1 | 成功連線數目。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `ConnectionFailure`1 | 失敗連線數目。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `SessionLaunchTime`1 | 起始 WorkSpaces 工作階段所需的時間量。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均、最大值、最小值、資料範例 | 秒鐘 | 
| `SessionDisconnect` | 已中斷連線的工作階段數目。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `UserConnected` | 有使用者連線的 WorkSpaces 數目。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `TrustedDeviceValidationAttempt`2 | 裝置驗證簽章驗證嘗試次數。 | `DirectoryId` | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `TrustedDeviceValidationSuccess`2 | 成功的裝置驗證簽章驗證數目。 | `DirectoryId` | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `TrustedDeviceValidationFailure`2 | 失敗的裝置驗證簽章驗證數目。 | `DirectoryId` | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `TrustedDeviceCertificateDaysBeforeExpiration` | 與目錄相關聯的根憑證到期前的剩餘天數。 | `CertificateId` | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `CPUUsage` | 使用的 CPU 資源百分比。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、最大值、最小值 | 百分比 | 
| `MemoryUsage` | 使用的機器記憶體百分比。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、最大值、最小值 | 百分比 | 
| `RootVolumeDiskUsage` | 使用的根磁碟區百分比。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、最大值、最小值 | 百分比 | 
| `UserVolumeDiskUsage` | 使用者磁碟區使用的百分比。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、最大值、最小值 | 百分比 | 
| `GPUUsage` | WorkSpace 上使用的 GPU 資源百分比。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、最大值、最小值 | 百分比 | 
| `CPUQueueLength` | WorkSpace 上等待 CPU 時間的執行緒數目。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、最大值、最小值 | 計數 | 
| `RootVolumeDiskIOQueueLength` | WorkSpace 上等待根磁碟區磁碟處理的待處理 I/O 請求數量。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、最大值、最小值 | 計數 | 
| `UserVolumeDiskIOQueueLength` | WorkSpace 上的使用者磁碟區磁碟正在等待處理的待處理 I/O 請求數量。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、最大值、最小值 | 計數 | 
| `MemoryPageHardFaults` | WorkSpace 上的硬頁面錯誤率。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、最大值、最小值 | 計數/秒 | 
| `PagingFileUsage` | 目前正在 WorkSpace 上使用的分頁檔案百分比。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、最大值、最小值 | 百分比 | 
| `UpTime` | 自上次重新啟動 WorkSpace 以來的時間。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均、最大值、最小值、資料範例 | 秒鐘 | 
| `InSessionLatency` | WorkSpaces 用戶端與 WorkSpace 之間的往返時間。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均、最大值、最小值、資料範例 | 毫秒 | 
| `UDPPacketLossRate`3 | 閘道與用戶端之間流量中遺失的 UDP 封包百分比。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均、最大值、最小值、資料範例 | 百分比 | 
| `TCPRetransmissionRate`4 | 從閘道重新傳輸至用戶端的 TCP 區段百分比。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均、最大值、最小值、資料範例 | 百分比 | 
| `Bandwidth`4 | 從閘道傳輸到用戶端 （傳出） 的資料速率。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均、最大值、最小值、資料範例 | 千位元數/秒 | 
| `BandwidthInbound`4 | 從用戶端傳輸到閘道 （傳入） 的資料速率。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均、最大值、最小值、資料範例 | 千位元數/秒 | 
| `CongestionWindow`4 | 流向用戶端之流量的閘道擁塞視窗大小。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均、最大值、最小值、資料範例 | 位元組 | 
| `ConnectionDuration`4 | 串流連線的持續時間。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均、最大值、最小值、資料範例 | 秒鐘 | 
| `FramesPerSecond`4 | 每秒從 WorkSpace 傳送至用戶端的影格數。 | `DirectoryId`<br />`WorkspaceId`<br />`RunningMode`<br />`Protocol`<br />`ComputeType`<br />`BundleId`<br />`UserName`<br />`ComputerName` | 平均值、最大值、最小值 | 計數/秒 | 

1 WorkSpaces 會記錄每個 WorkSpace 連線的指標。這些指標會在使用者透過 WorkSpaces 用戶端成功驗證之後發出，然後用戶端會啟動工作階段連線。

2 如果為目錄啟用信任的裝置功能，Amazon WorkSpaces 會使用憑證型身分驗證來判斷裝置是否受信任。當使用者嘗試存取其 WorkSpaces 時，系統會發出這些指標，指出可信任的裝置驗證成功或失敗。這些指標僅適用於 Windows 和 macOS 用戶端應用程式。

3 測量方向取決於基礎通訊協定。
+ **在 PCoIP** 上：測量從用戶端到閘道的遺失。
+ **在 DCV** 上：測量從閘道到用戶端的遺失。

4 僅適用於 DCV。

## WorkSpaces 指標的維度
<a name="wsp-metric-dimensions"></a>

若要篩選指標資料，請使用下列維度。


| 維度 | 說明 | 
| --- | --- | 
| `DirectoryId` | 篩選指標資料至指定目錄中的 WorkSpaces。目錄 ID 的形式為 `d-XXXXXXXXXX`。 | 
| `WorkspaceId` | 篩選指標資料至指定的 WorkSpace。WorkSpace ID 的形式為 `ws-XXXXXXXXXX`。 | 
| `CertificateId` | 篩選指標資料至與目錄相關聯的指定根憑證。憑證 ID 的形式為 `wsc-XXXXXXXXX`。 | 
| `RunningMode` | 依執行模式篩選 WorkSpaces 的指標資料。執行模式的形式為 AutoStop 或 AlwaysOn。 | 
| `BundleId` | 依通訊協定篩選指標資料至 WorkSpaces。套件的形式為 `wsb-XXXXXXXXXX`。 | 
| `ComputeType` | 依運算類型篩選 WorkSpaces 的指標資料。 | 
| `Protocol` | 依通訊協定類型將指標資料篩選至 WorkSpaces。 | 
| `UserName` | 依使用者名稱篩選指標資料至 WorkSpaces。 `UserName` 不能包含非 ASCII 字元，如下所示：  重音字母：é、à、ö、ñ 等 非拉丁字母 符號：©️、®️、€、£、μ、¥ 等。   | 
| `ComputerName` | 篩選指標資料至指定的 WorkSpace。請參閱 [WorkSpaces 電腦名稱]( https://docs.aws.amazon.com/workspaces/latest/adminguide/wsp-directory-identify-computer.html)的各種格式。 | 

## 監控範例
<a name="monitoring_example"></a>

下列範例示範如何使用 AWS CLI 來回應 CloudWatch 警示，並判斷目錄中的哪些 WorkSpaces 發生連線失敗。

**若要回應 CloudWatch 警示**

1. 使用 [describe-alarms](https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/describe-alarms.html) 命令來判斷警示套用至哪個目錄。

   ```
   aws cloudwatch describe-alarms --state-value "ALARM"
   
   {
     "MetricAlarms": [
       {
         ...
         "Dimensions": [
           {
             "Name": "DirectoryId",
             "Value": "{{directory_id}}"
           }
         ],
         ...
       }
     ]
   }
   ```

1. 使用 [describe-workspaces](https://docs.aws.amazon.com/cli/latest/reference/workspaces/describe-workspaces.html) 命令來取得指定目錄中的 WorkSpaces 清單。

   ```
   aws workspaces describe-workspaces --directory-id {{directory_id}}
   
   {
     "Workspaces": [
       {
         ...
         "WorkspaceId": "{{workspace1_id}}",
         ...
       },
       {
         ...
         "WorkspaceId": "{{workspace2_id}}",
         ...
       },
       {
         ...
         "WorkspaceId": "{{workspace3_id}}",
         ...
       }
     ]
   }
   ```

1. 使用 [get-metric-statistics](https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/get-metric-statistics.html) 命令來取得目錄中每個 WorkSpace 的 CloudWatch 指標。

   ```
   aws cloudwatch get-metric-statistics \
   --namespace AWS/WorkSpaces \
   --metric-name ConnectionFailure \
   --start-time 2015-04-27T00:00:00Z \
   --end-time 2015-04-28T00:00:00Z \
   --period 3600 \
   --statistics Sum \
   --dimensions "Name=WorkspaceId,Value={{workspace_id}}"
   
   {
     "Datapoints" : [
       {
         "Timestamp": "2015-04-27T00:18:00Z",
         "Sum": 1.0,
         "Unit": "Count"
       },
       {
         "Timestamp": "2014-04-27T01:18:00Z",
         "Sum": 0.0,
         "Unit": "Count"
       }
     ],
     "Label" : "ConnectionFailure"
   }
   ```