

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

# 監控 WorkSpaces Personal
<a name="amazon-workspaces-monitoring"></a>

您可以使用下列功能來監控 WorkSpaces。

**CloudWatch 指標**  
Amazon WorkSpaces 會將有關 WorkSpaces 的資料點發佈到 Amazon CloudWatch。CloudWatch 可讓使用一組時間序列資料的形式來擷取這些資料點的相關統計資料，也就是*指標*。您可以使用這些指標來確認您的 WorkSpaces 是否依照預期執行。如需詳細資訊，請參閱[使用 CloudWatch 指標監控 WorkSpaces](cloudwatch-metrics.md)。

**CloudWatch Events**  
當使用者登入您的 WorkSpace 時，Amazon WorkSpaces 可以將事件提交至 Amazon CloudWatch Events。這可讓您在事件發生時做出回應。如需詳細資訊，請參閱[使用 Amazon EventBridge 監控 WorkSpaces](cloudwatch-events.md)。

**CloudTrail 日誌**  
AWS CloudTrail 提供 WorkSpaces 中使用者、角色或服務 AWS 所採取動作的記錄。您可以利用 CloudTrail 所收集的資訊來判斷向 WorkSpaces 發出的請求，以及發出請求的 IP 地址、人員、時間和其他詳細資訊。如需詳細資訊，請參閱[使用 CloudTrail.logs 為智慧卡使用者記錄 WorkSpaces API 呼叫](https://docs.aws.amazon.com/workspaces/latest/api/cloudtrail_logging.html)成功和失敗的登入事件。 AWS CloudTrail 如需詳細資訊，請參閱[了解智慧卡使用者的 AWS 登入事件](signin-events.md)。

**CloudWatch 網路監視器**  
Amazon CloudWatch Internet Monitor 可讓您了解網際網路問題如何影響託管於 和最終使用者之間的應用程式的效能 AWS 和可用性。您也可以使用 CloudWatch 網路監視器：  
+ 為一或多個 WorkSpace 目錄建立監視器。
+ 監控網際網路效能。
+ 針對最終使用者的城市網路 (這通常是網際網路服務供應商 (ISP)，包括其位置和 ASN) 與其 WorkSpace 區域之間的問題，取得相關警示。
網路監視器使用從其全球網路足跡 AWS 擷取的連線資料，來計算面向網際網路流量的效能和可用性基準。網路監視器目前無法為個人最終使用者提供網際網路效能，但其可提供城市和 ISP 層級的效能。

**Amazon S3 存取日誌**  
如果使用者在 Amazon S3 儲存貯體中儲存了應用程式設定資料或主資料夾資料，請考慮查看 Amazon S3 伺服器存取日誌來監控存取。這些日誌提供了對儲存貯體進行請求的詳細記錄。伺服器存取日誌對許多應用程式來說，都是個很有用的資料。舉例來說，存取記錄資訊在安全與存取稽核中相當實用。如需詳細資訊，請參閱《Amazon Simple Storage Service 使用者指南》**中的[Amazon S3 伺服器存取記錄](https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerLogs.html)。

# 使用 CloudWatch 自動儀表板監控您的 WorkSpaces 運作狀態
<a name="cloudwatch-dashboard"></a>

您可以使用 CloudWatch 自動儀表板監控 WorkSpaces，該儀表板會收集原始資料並將其處理為可讀且近乎即時的指標。這些指標會保留 15 個月，以存取歷史資訊並監控 Web 應用程式或服務的效能。您也可以設定留意特定閾值的警示，當滿足這些閾值時傳送通知或採取動作。如需詳細資訊，請參閱 [Amazon CloudWatch 使用者指南](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/)。

當您使用 AWS 帳戶設定 WorkSpaces 時，會自動建立 CloudWatch 儀表板。儀表板可讓您跨區域監控 WorkSpaces 指標，例如其運作狀態和效能。您也可以將儀表板用於下列目的：
+ 識別運作狀態不佳的 WorkSpace 執行個體。
+ 識別運作狀態不佳的 WorkSpace 執行個體的執行模式、通訊協定和作業系統。
+ 檢視一段時間內的關鍵資源使用率。
+ 識別異常以協助故障診斷。

WorkSpaces CloudWatch 自動儀表板適用於所有 AWS 商業區域。

**使用 WorkSpaces CloudWatch 自動儀表板**

1. 透過 [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1. 在導覽窗格中，選擇 **Dashboards** (儀表板)。

1. 選擇**自動儀表板**索引標籤。

1. 選擇 **WorkSpaces**。

## 了解 WorkSpaces CloudWatch 自動儀表板
<a name="understanding-cloudwatch-dashboard"></a>

CloudWatch 自動儀表板可讓您深入了解 WorkSpaces 資源的效能，並協助您識別效能問題。

![\[WorkSpaces 用戶端登入畫面\]](http://docs.aws.amazon.com/zh_tw/workspaces/latest/adminguide/images/cw_dashboard_withcallouts.png)


**儀表板包含下列功能：**

1. 使用時間和日期範圍控制項檢視歷史資料。

1. 將自訂儀表板檢視新增至 CloudWatch 自訂儀表板。

1. 執行下列動作來監控 WorkSpaces 的整體運作狀態和使用率狀態：

   1. 檢視佈建的 WorkSpaces 總數、連線的使用者數目、運作狀態不佳和運作狀態良好的 WorkSpace 執行個體數目。

   1. 檢視運作狀態不佳的 WorkSpaces 及其不同的變數，例如通訊協定和運算模式。

   1. 將滑鼠游標暫留在折線圖上，以檢視特定通訊協定和執行模式在一段時間內運作狀態良好或不良好的 WorkSpace 執行個體數量。

   1. 選擇省略號選單，然後選擇在**指標中檢視**，以在時間比例圖上檢視指標。

1. 檢視您的連線指標及其不同的變數，例如連線嘗試次數、成功的連線，以及在任何特定時間 WorkSpaces 環境中失敗的連線。

1. 檢視影響使用者體驗的 InSession 延遲，例如往返時間 (RTT)，以判斷連線運作狀態和封包遺失，以監控網路運作狀態。

1. 檢視主機效能和資源使用率，以識別和疑難排解潛在的效能問題。

# 使用 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`1 |  傳回良好運作狀態的 WorkSpaces 數目。  |  `DirectoryId` `WorkspaceId` `RunningMode` `Protocol` `ComputeType` `BundleId` `UserName` `ComputerName`  | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `Unhealthy`1 |  傳回不良運作狀態的 WorkSpaces 數目。  |  `DirectoryId` `WorkspaceId` `RunningMode` `Protocol` `ComputeType` `BundleId` `UserName` `ComputerName`  | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `ConnectionAttempt`2 |  連線嘗試次數。  |  `DirectoryId` `WorkspaceId` `RunningMode` `Protocol` `ComputeType` `BundleId` `UserName` `ComputerName`  | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `ConnectionSuccess`2 |  成功連線數目。  |  `DirectoryId` `WorkspaceId` `RunningMode` `Protocol` `ComputeType` `BundleId` `UserName` `ComputerName`  | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `ConnectionFailure`2 |  失敗連線數目。  |  `DirectoryId` `WorkspaceId` `RunningMode` `Protocol` `ComputeType` `BundleId` `UserName` `ComputerName`  | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `SessionLaunchTime`2，6 | 起始 WorkSpaces 工作階段所需的時間量。 |  `DirectoryId` `WorkspaceId` `RunningMode` `Protocol` `ComputeType` `BundleId` `UserName` `ComputerName`  | 平均值、總和、最大值、最小值、資料樣本 | 秒 (時間) | 
| `InSessionLatency`2，6 | WorkSpaces 用戶端與 WorkSpace 之間的往返時間。 |  `DirectoryId` `WorkspaceId` `RunningMode` `Protocol` `ComputeType` `BundleId` `UserName` `ComputerName`  | 平均值、總和、最大值、最小值、資料樣本 | 毫秒 (時間) | 
| `SessionDisconnect`2，6 | 已關閉的連線數目，包括使用者起始和失敗的連線。 |  `DirectoryId` `WorkspaceId` `RunningMode` `Protocol` `ComputeType` `BundleId` `UserName` `ComputerName`  | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `UserConnected`3 | 有使用者連線的 WorkSpaces 數目。 |  `DirectoryId` `WorkspaceId` `RunningMode` `Protocol` `ComputeType` `BundleId` `UserName` `ComputerName`  | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `Stopped` | 已停止的 WorkSpaces 數目。 |  `DirectoryId` `WorkspaceId` `RunningMode` `Protocol` `ComputeType` `BundleId` `UserName` `ComputerName`  | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `Maintenance`4 | 正在維護的 WorkSpaces 數目。 |  `DirectoryId` `WorkspaceId` `RunningMode` `Protocol` `ComputeType` `BundleId` `UserName` `ComputerName`  | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `TrustedDeviceValidationAttempt`5，6 | 裝置驗證簽章驗證嘗試次數。 |  `DirectoryId`  | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `TrustedDeviceValidationSuccess`5，6 | 成功的裝置驗證簽章驗證數目。 |  `DirectoryId`  | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `TrustedDeviceValidationFailure`5，6 | 失敗的裝置驗證簽章驗證數目。  |  `DirectoryId`  | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `TrustedDeviceCertificateDaysBeforeExpiration`6 | 與目錄相關聯的根憑證到期前的剩餘天數。 |  `CertificateId`  | 平均值、總和、最大值、最小值、資料樣本 | 計數 | 
| `CPUUsage` | 使用的 CPU 資源百分比。 |  `DirectoryId` `WorkspaceId` `RunningMode` `Protocol` `ComputeType` `BundleId` `UserName` `ComputerName`  | 平均值、最大值、最小值 | 百分比 | 
| `MemoryUsage` | 使用的機器記憶體百分比。 |  `DirectoryId` `WorkspaceId` `RunningMode` `Protocol` `ComputeType` `BundleId` `UserName` `ComputerName`  | 平均值、最大值、最小值 | 百分比 | 
| `RootVolumeDiskUsage` | 使用的根磁碟區百分比。 |  `DirectoryId` `WorkspaceId` `RunningMode` `Protocol` `ComputeType` `BundleId` `UserName` `ComputerName`  | 平均值、最大值、最小值 | 百分比 | 
| `UserVolumeDiskUsage` | 使用者磁碟區使用的百分比。 |  `DirectoryId` `WorkspaceId` `RunningMode` `Protocol` `ComputeType` `BundleId` `UserName` `ComputerName`  | 平均值、最大值、最小值 | 百分比 | 
| `UDPPacketLossRate`7 | 用戶端與閘道之間捨棄的封包百分比。 |  `DirectoryId` `WorkspaceId` `RunningMode` `Protocol` `ComputeType` `BundleId` `UserName` `ComputerName`  | 平均、最大值、最小值、資料範例 | 百分比 | 
| `UpTime` | 自上次重新啟動 WorkSpace 以來的時間。 |  `DirectoryId` `WorkspaceId` `RunningMode` `Protocol` `ComputeType` `BundleId` `UserName` `ComputerName`  | 平均、最大值、最小值、資料範例 | 秒鐘 | 

1 WorkSpaces 會定期傳送狀態要求給 WorkSpace。WorkSpace 會在回應這些要求時標示為 `Available`，以及在無法回應這些要求時標示為 `Unhealthy`。這些指標可在每個 WorkSpace 的精細層級取得，也可針對組織中的所有 WorkSpaces 彙總。

2 WorkSpaces 會記錄對每個 WorkSpace 進行之連線的指標。這些指標會在使用者透過 WorkSpaces 用戶端成功驗證，然後用戶端起始工作階段後發出。這些指標可在每個 WorkSpace 的精細層級取得，並且會針對目錄中的所有 WorkSpaces 彙總。

3 WorkSpaces 會定期傳送連線狀態要求給 WorkSpace。當使用者主動使用其工作階段時，系統會回報使用者已連線。這個指標可在每個 WorkSpace 的精細層級取得，也可針對組織中的所有 WorkSpaces 彙總。

4 此指標適用於使用 AutoStop 執行模式設定的 WorkSpaces。如果您已針對 WorkSpaces 啟用維護，此指標會擷取目前正在維護的 WorkSpaces 數目。此指標可在每個 WorkSpace 的精細層級取得，用以說明 WorkSpace 何時進行維護及何時移除。

5 如果目錄已啟用可信任的裝置功能，Amazon WorkSpaces 會使用憑證型驗證來判斷裝置是否可信任。當使用者嘗試存取其 WorkSpaces 時，系統會發出這些指標，指出可信任的裝置驗證成功或失敗。這些指標可在每個目錄的精細層級取得，且僅適用於 Amazon WorkSpaces Windows 和 macOS 用戶端應用程式。

6 不適用於 WorkSpaces Web Access。

7 此指標會測量平均封包遺失。
+ **在 PCoIP** 上：測量從用戶端到閘道的平均 UDP 封包遺失。
**注意**  
這是在閘道測量。
+ **在 DCV** 上：測量從閘道到用戶端的 UDP 封包遺失。
**注意**  
這是在閘道測量。

## 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"
   }
   ```

# 使用 Amazon EventBridge 監控 WorkSpaces
<a name="cloudwatch-events"></a>

您可使用 Amazon WorkSpaces 中的事件來檢視、搜尋、下載、封存、分析和回應 WorkSpaces 的成功登入。例如，您可以針對下列目的使用事件：
+ 將 WorkSpaces 登入事件儲存或封存為日誌，以供未來參考、分析日誌以尋找模式，並根據這些模式採取行動。
+ 使用 WAN IP 地址來判斷使用者從何處登入，然後使用政策讓使用者只能存取 WorkSpaces 中符合在 `WorkSpaces Access` 的事件類型中找到之存取條件的檔案或資料。
+ 分析登入資料並使用 執行自動化動作 AWS Lambda。
+ 使用政策控制來封鎖來自未經授權的 IP 地址對檔案和應用程式的存取。
+ 找出用來連線至 WorkSpaces 的 WorkSpaces 用戶端版本。

Amazon WorkSpaces 會全力發出這些事件。事件會以接近即時的方式遞送到 EventBridge。使用 EventBridge，您可以建立觸發程式設計動作以回應事件的規則。例如，您可以設定呼叫 SNS 主題以傳送電子郵件通知的規則，或呼叫 Lambda 函數以採取一些動作。如需詳細資訊，請參閱《Amazon EventBridge 使用者指南》[https://docs.aws.amazon.com/eventbridge/latest/userguide/](https://docs.aws.amazon.com/eventbridge/latest/userguide/)。

## WorkSpaces 存取事件
<a name="workspaces-event-types"></a>

WorkSpaces 用戶端應用程式會在使用者成功登入 WorkSpace 時傳送 `WorkSpaces Access` 事件。所有 WorkSpaces 用戶端都會傳送這些事件。

使用 DCV 為 WorkSpaces 發出的事件需要 WorkSpaces 用戶端應用程式 4.0.1 版或更新版本。

事件會以 JSON 物件的形式表示。以下是 `WorkSpaces Access` 事件的範例資料。

```
{
    "version": "0",
    "id": "64ca0eda-9751-dc55-c41a-1bd50b4fc9b7",
    "detail-type": "WorkSpaces Access",
    "source": "aws.workspaces",
    "account": "123456789012",
    "time": "2023-04-05T16:13:59Z",
    "region": "us-east-1",
    "resources": [],
    "detail": {
        "clientIpAddress": "192.0.2.3",
        "actionType": "successfulLogin",
        "workspacesClientProductName": "WorkSpacesWebClient",
        "loginTime": "2023-04-05T16:13:37.603Z",
        "clientPlatform": "Windows",
        "directoryId": "domain/d-123456789",
        "clientVersion": "5.7.0.3472",
        "workspaceId": "ws-xyskdga"
    }
}
```事件特定欄位

`clientIpAddress`  
用戶端應用程式的 WAN IP 地址。如果是 PCoIP 零客戶端，則此為 Terdici 驗證用戶端的 IP 地址。

`actionType`  
這個值一律為 `successfulLogin`。

`workspacesClientProductName`  
下列值會區分大小寫。  
+ `WorkSpaces Desktop client`—Windows、macOS 和 Linux 用戶端
+ `Amazon WorkSpaces Mobile client`—iOS 用戶端
+ `WorkSpaces Mobile Client`—Android 用戶端
+ `WorkSpaces Chrome Client`—Chromebook 用戶端
+ `WorkSpacesWebClient`—Web Access 用戶端
+ `AmazonWorkSpacesThinClient` — Amazon WorkSpaces 精簡型客戶端裝置
+ `Teradici PCoIP Zero Client, Teradici PCoIP Desktop Client, or Dell Wyse PCoIP Client `—零客戶端

`loginTime`  
使用者登入 WorkSpace Spaces 的時間。

`clientPlatform`  
+ `Android`
+ `Chrome`
+ `iOS`
+ `Linux`
+ `OSX`
+ `Windows`
+ `Teradici PCoIP Zero Client and Tera2`
+ `Web`

`directoryId`  
工作空間 目錄的識別碼。您必須在目錄識別碼前面加上 `domain/`。例如 `"domain/d-123456789"`。

`clientVersion`  
用來連線至 WorkSpaces 的用戶端版本。

`workspaceId`  
WorkSpace 的識別碼。

## 建立規則以處理 WorkSpaces 事件
<a name="create-event-rule"></a>

請依照下列程序建立規則，以處理 WorkSpaces 事件。

**先決條件**

若要接收電子郵件通知，請建立 Amazon Simple Notification Service 主題。

1. 在 [https://console.aws.amazon.com/sns/v3/home](https://console.aws.amazon.com/sns/v3/home) 開啟 Amazon SNS 主控台。

1. 在導覽窗格中，選擇**主題**。

1. 請選擇**建立主題**。

1. 針對**類型**，選擇**標準**。

1. 在 **Name** (名稱) 中，輸入主題名稱。

1. 請選擇**建立主題**。

1. 選擇**建立訂閱**。

1. 對於**通訊協定**，選擇**電子郵件**。

1. 在 **Endpoint** (端點) 中，輸入接收通知的電子郵件地址。

1. 選擇**建立訂閱**。

1. 您會收到帶有下列主旨行的電子郵件訊息：AWS Notification - Subscription Confirmation。請依照指示來確認訂閱。

**若建立規則以處理 WorkSpaces 事件**

1. 在 [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/) 開啟 Amazon EventBridge 主控台。

1. 選擇 **Create rule** (建立規則)。

1. 在 **Name** (名稱) 中，輸入規則名稱。

1. 針對**規則類型**，選擇**具有事件模式的規則**。

1. 選擇**下一步**。

1. 針對 **Event pattern** (事件模式)，請執行下列動作：

   1. 在 **Event source (事件來源)**，選擇 **AWS 服務**。

   1. 針對 **AWS 服務**，選擇 **WorkSpaces**。

   1. 針對**事件類型**，選擇 **WorkSpaces 存取權**。

   1. 根據預設，我們會傳送每個事件的通知。如果您想要，可以建立事件模式來篩選特定用戶端或工作區的事件。

1. 選擇**下一步**。

1. 如下所示指定目標：

   1. 對於 **Target types** (目標類型)，選擇 **AWS 服務**。

   1. 對於 **Select a target** (選取目標)，選擇 **SNS topic** (SNS 主題)。

   1. 對於**主題**，選擇您為通知建立的 SNS 主題。

1. 選擇**下一步**。

1. (選用) 將標籤新增至您的規則。

1. 選擇**下一步**。

1. 選擇**建立規則**。

# 了解智慧卡使用者的 AWS 登入事件
<a name="signin-events"></a>

AWS CloudTrail 會記錄智慧卡使用者成功和失敗的登入事件。這包括每次提示使用者解決特定憑證挑戰或要素時擷取的登入事件，以及該特定憑證驗證請求的狀態。使用者只會在完成所有必要的憑證挑戰後才會登入，這會導致 `UserAuthentication` 事件被記錄。

下表擷取每個登入 CloudTrail 事件名稱及其目的。


| 事件名稱 | 事件目的 | 
| --- | --- | 
| `CredentialChallenge` |  通知 AWS 登入已請求使用者解決特定的登入資料挑戰`CredentialType`，並指定必要的 （例如，SMARTCARD)。  | 
| `CredentialVerification` |  通知使用者已嘗試解決特定 `CredentialChallenge` 請求，並指定該憑證是成功還是失敗。  | 
| `UserAuthentication` |  通知使用者遭到挑戰的所有驗證需求都已成功完成，且使用者已成功登入。當使用者無法順利完成所需的憑證挑戰時，不會記錄任何 `UserAuthentication` 事件。  | 

下表擷取特定登入 CloudTrail 事件中包含的其他實用事件資料欄位。


| 事件名稱 | 事件目的 | 登入事件適用性 | 範例值 | 
| --- | --- | --- | --- | 
| `AuthWorkflowID` |  使整個登入序列中發出的所有事件產生關聯。對於每次使用者登入， AWS 登入可以發出多個事件。  |  `CredentialChallenge`, `CredentialVerification`, `UserAuthentication`  |  "AuthWorkflowID": "9de74b32-8362-4a01-a524-de21df59fd83"  | 
| `CredentialType` |  通知使用者已嘗試解決特定 `CredentialChallenge` 請求，並指定該憑證是成功還是失敗。  |  `CredentialChallenge`, `CredentialVerification`, `UserAuthentication`  |  CredentialType": "SMARTCARD" (現今可能的值：SMARTCARD)  | 
| `LoginTo` |  通知使用者遭到挑戰的所有驗證需求都已成功完成，且使用者已成功登入。當使用者無法順利完成所需的憑證挑戰時，不會記錄任何 `UserAuthentication` 事件。  |  `UserAuthentication`  |  "LoginTo": "https://skylight.local“  | 

## AWS 登入案例的範例事件
<a name="example-event-signin"></a>

下列範例顯示不同登入案例中 CloudTrail 事件的預期序列。

**Topics**
+ [使用智慧卡驗證時登入成功](#successful-signin)
+ [僅使用智慧卡驗證時登入失敗](#failed-signin)

### 使用智慧卡驗證時登入成功
<a name="successful-signin"></a>

下列事件序列會擷取智慧卡登入成功的範例。

**CredentialChallenge**  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "Unknown",
        "principalId": "509318101470",
        "arn": "",
        "accountId": "509318101470",
        "accessKeyId": ""
    },
    "eventTime": "2021-07-30T17:23:29Z",
    "eventSource": "signin.amazonaws.com",
    "eventName": "CredentialChallenge", 
    "awsRegion": "us-east-1", 
    "sourceIPAddress": "AWS Internal", 
    "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.164 Safari/537.36",
    "requestParameters": null,
    "responseElements": null,
    "additionalEventData": {
        "AuthWorkflowID": "6602f256-3b76-4977-96dc-306a7283269e",
        "CredentialType": "SMARTCARD"
    },
    "requestID": "65551a6d-654a-4be8-90b5-bbfef7187d3a",
    "eventID": "fb603838-f119-4304-9fdc-c0f947a82116",
    "readOnly": false,
    "eventType": "AwsServiceEvent",
    "managementEvent": true,
    "eventCategory": "Management", 
    "recipientAccountId": "509318101470", 
    "serviceEventDetails": {
        CredentialChallenge": "Success"
    }
}
```

**成功的 CredentialVerification**  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "Unknown",
        "principalId": "509318101470",
        "arn": "",
        "accountId": "509318101470",
        "accessKeyId": ""
    },
    "eventTime": "2021-07-30T17:23:39Z",
    "eventSource": "signin.amazonaws.com",
    "eventName": "CredentialVerification",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "AWS Internal",
    "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.164 Safari/537.36",
    "requestParameters": null,
    "responseElements": null,
    "additionalEventData": {
        "AuthWorkflowID": "6602f256-3b76-4977-96dc-306a7283269e",
        "CredentialType": "SMARTCARD"
    },
    "requestID": "81869203-1404-4bf2-a1a4-3d30aa08d8d5",
    "eventID": "84c0a2ff-413f-4d0f-9108-f72c90a41b6c",
    "readOnly": false,
    "eventType": "AwsServiceEvent",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "509318101470",
    "serviceEventDetails": {
        CredentialVerification": "Success"
    }
}
```

**成功的 UserAuthentication**  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "Unknown",
        "principalId": "509318101470",
        "arn": "",
        "accountId": "509318101470",
        "accessKeyId": ""
    },
    "eventTime": "2021-07-30T17:23:39Z",
    "eventSource": "signin.amazonaws.com",
    "eventName": "UserAuthentication", 
    "awsRegion": "us-east-1", 
    "sourceIPAddress": "AWS Internal", 
    "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.164 Safari/537.36",
    "requestParameters": null,
    "responseElements": null,
    "additionalEventData": {
        "AuthWorkflowID": "6602f256-3b76-4977-96dc-306a7283269e", 
        "LoginTo": "https://skylight.local", 
        "CredentialType": "SMARTCARD"
    },
    "requestID": "81869203-1404-4bf2-a1a4-3d30aa08d8d5", 
    "eventID": "acc0dba8-8e8b-414b-a52d-6b7cd51d38f6", 
    "readOnly": false,
    "eventType": "AwsServiceEvent", 
    "managementEvent": true,
    "eventCategory": "Management", 
    "recipientAccountId": "509318101470", 
    "serviceEventDetails": {
        UserAuthentication": "Success"
    }
}
```

### 僅使用智慧卡驗證時登入失敗
<a name="failed-signin"></a>

下列事件序列會擷取智慧卡登入失敗的範例。

**CredentialChallenge**  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "Unknown",
        "principalId": "509318101470",
        "arn": "",
        "accountId": "509318101470",
        "accessKeyId": ""
    },
    "eventTime": "2021-07-30T17:23:06Z",
    "eventSource": "signin.amazonaws.com",
    "eventName": "CredentialChallenge", 
    "awaRegion": "us-east-1", 
    "sourceIPAddress": "AWS Internal", 
    "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.164 Safari/537.36",
    "requestParameters": null,
    "responseElements": null,
    "additionalEventData": {
        "AuthWorkflowID": "73dfd26b-f812-4bd2-82e9-0b2abb358cdb",
        "CredentialType": "SMARTCARD"
    },
    "requestID": "73eb499d-91a8-4c18-9c5d-281fd45ab50a",
    "eventID": "f30a50ec-71cf-415a-a5ab-e287edc800da",
    "readOnly": false,
    "eventType": "AwsServiceEvent",
    "managementEvent": true,
    "eventCategory": "Management", 
    "recipientAccountId": "509318101470", 
    "serviceEventDetails": {
        CredentialChallenge": "Success"
    }
}
```

**失敗的 CredentialVerification**  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "Unknown",
        "principalId": "509318101470",
        "arn": "",
        "accountId": "509318101470",
        "accessKeyId": ""
    },
    "eventTime": "2021-07-30T17:23:13Z",
    "eventSource": "signin.amazonaws.com",
    "eventName": "CredentialVerification",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "AWS Internal",
    "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.164 Safari/537.36",
    "requestParameters": null,
    "responseElements": null,
    "additionalEventData": {
        "AuthWorkflowID": "73dfd26b-f812-4bd2-82e9-0b2abb358cdb",
        "CredentialType": "SMARTCARD"
    },
    "requestID": "051ca316-0b0d-4d38-940b-5fe5794fda03",
    "eventID": "4e6fbfc7-0479-48da-b7dc-e875155a8177",
    "readOnly": false,
    "eventType": "AwsServiceEvent",
    "managementEvent": true,
    "eventCategory": "Management", 
    "recipientAccountId": "509318101470", 
    "serviceEventDetails": {
        CredentialVerification": "Failure"
    }
}
```

# 使用 CloudFormation 範本建立自訂 CloudWatch 儀表板
<a name="cloudformation-templates"></a>

AWS 提供 CloudFormation 範本，可用來為 WorkSpaces 建立自訂 CloudWatch 儀表板。從下列 CloudFormation 範本選項中選擇，在 CloudFormation 主控台中為您的 WorkSpaces 建立自訂儀表板。

## 入門前的考量事項
<a name="before-starting-custom-cw-templates"></a>

開始使用自訂 CloudWatch 儀表板之前，請考慮下列事項：
+ 在與您要監控的已部署 WorkSpaces AWS 區域 相同的 中建立儀表板。
+ 您也可以使用 CloudWatch 主控台建立自訂儀表板。
+ 成本可能與自訂 CloudWatch 儀表板相關聯。如需定價的相關資訊，請參閱 [Amazon CloudWatch 定價](https://aws.amazon.com/cloudwatch/pricing)

## 服務台儀表板
<a name="help-desk-dashboard"></a>

服務台儀表板會顯示特定 WorkSpace 的下列指標：
+ CPU 用量
+ 記憶體用量
+ 工作階段內延遲
+ 根磁碟區
+ 使用者磁碟區
+ 封包遺失
+ 硬碟使用量

以下是服務台儀表板的範例。

![\[CloudWatch 的範例服務台儀表板。\]](http://docs.aws.amazon.com/zh_tw/workspaces/latest/adminguide/images/help-desk.png)


完成下列程序，使用 在 CloudWatch 中建立自訂儀表板 CloudFormation。

1. [在 CloudFormation 主控台中開啟建立堆疊頁面](https://console.aws.amazon.com/cloudformation/home#/stacks/new?stackName=YourStackName&templateURL=https://cfn-templates-global-prod-iad.s3.us-east-1.amazonaws.com/cfn-templates/workspaces_helpdesk_dashboard.yaml)。此連結會開啟頁面，其中包含預先填入服務台自訂 CloudWatch 儀表板範本的 Amazon S3 儲存貯體位置。

1. 檢閱**建立堆疊**頁面上的預設選取項目。請注意，**Amazon S3 URL** 欄位會預先填入 CloudFormation 範本的 Amazon S3 儲存貯體位置。

1. 選擇**下一步**。

1. 在**堆疊名稱**文字方塊中，輸入堆疊的名稱。

   堆疊名稱是一個識別碼，可協助您從堆疊清單中找到特定堆疊。堆疊名稱只能包含英數字元 (區分大小寫) 和連字號。必須以字母字元開頭，且長度不可超過 128 個字元。

1. 在 **DashboardName** 文字方塊中，輸入您要提供儀表板的名稱。

   儀表板名稱只能包含英數字元、破折號 (`–`) 和底線 ()`_`。

1. 選擇**下一步**。

1. 檢閱**設定堆疊選項**頁面上的預設選擇，然後選擇**下一步**。

1. 向下捲動至**轉換可能需要存取功能**，並勾選確認方塊。然後選擇**提交**以建立堆疊和自訂 CloudWatch 儀表板。
**重要**  
成本可能與自訂 CloudWatch 儀表板相關聯。如需定價的相關資訊，請參閱 [Amazon CloudWatch 定價](https://aws.amazon.com/cloudwatch/pricing)

1. 透過 [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1. 在左側導覽列中，選擇**儀表板**。

1. 在**自訂儀表板**下，使用您在此程序中稍早輸入的儀表板名稱選擇儀表板。

1. 使用服務台範例範本，輸入 WorkSpace 的 UserName 來監控其資料。

## Connection Insights 儀表板
<a name="connection-insights-dashboard"></a>

Connection Insights 儀表板會顯示連線至 WorkSpaces 的用戶端版本、平台和 IP 地址。此儀表板可讓您更了解使用者連線的方式，以便使用過時的用戶端主動通知使用者。動態變數可讓您監控 IP 地址或特定目錄的詳細資訊。

以下是 Connection Insights 儀表板的範例。

![\[CloudWatch 的範例連線洞察儀表板。\]](http://docs.aws.amazon.com/zh_tw/workspaces/latest/adminguide/images/connection-insights.png)


完成下列程序，使用 在 CloudWatch 中建立自訂儀表板 CloudFormation。

1. [在 CloudFormation 主控台中開啟建立堆疊頁面](https://console.aws.amazon.com/cloudformation/home#/stacks/new?stackName=YourStackName&templateURL=https://cfn-templates-global-prod-iad.s3.us-east-1.amazonaws.com/cfn-templates/workspaces_connection_insights_dashboard.yaml)。此連結會開啟頁面，其中已預先填入 Connection Insights 自訂 CloudWatch 儀表板範本的 Amazon S3 儲存貯體位置。

1. 檢閱**建立堆疊**頁面上的預設選取項目。請注意，**Amazon S3 URL** 欄位會預先填入 CloudFormation 範本的 Amazon S3 儲存貯體位置。

1. 選擇**下一步**。

1. 在**堆疊名稱**文字方塊中，輸入堆疊的名稱。

   堆疊名稱是一個識別碼，可協助您從堆疊清單中找到特定堆疊。堆疊名稱只能包含英數字元 (區分大小寫) 和連字號。必須以字母字元開頭，且長度不可超過 128 個字元。

1. 在 **DashboardName** 文字方塊中，輸入您要提供儀表板的名稱。輸入其他相關的 CloudWatch 存取群組設定資訊。

   儀表板名稱只能包含英數字元、破折號 (`–`) 和底線 ()`_`。

1. 在 **LogRetention** 下，輸入您要保留 LogGroup 的天數。

1. 在 **SetupEventBridge** 下，選擇是否要部署 EventBridge 規則以取得 WorkSpaces 存取日誌。

1. 在 **WorkSpaceAccessLogsName** 下，輸入具有 WorkSpaces 存取日誌的 CloudWatch LogGroup 名稱。

1. 選擇**下一步**。

1. 檢閱**設定堆疊選項**頁面上的預設選擇，然後選擇**下一步**。

1. 向下捲動至**轉換可能需要存取功能**，並勾選確認方塊。然後選擇**提交**以建立堆疊和自訂 CloudWatch 儀表板。
**重要**  
成本可能與自訂 CloudWatch 儀表板相關聯。如需定價的資訊，請參閱 [Amazon CloudWatch 定價](https://aws.amazon.com/cloudwatch/pricing)

1. 透過 [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1. 在左側導覽列中，選擇**儀表板**。

1. 在**自訂儀表板**下，使用您在此程序中稍早輸入的儀表板名稱選擇儀表板。

1. 您現在可以使用 Connection Insights 儀表板監控 WorkSpace 的資料。

## 網路監控儀表板
<a name="cloudwatch-internet-monitoring-dashboard"></a>

網路監控儀表板會顯示您的使用者用來加入 WorkSpaces 執行個體的網際網路服務供應商 (ISP) 詳細資訊。它提供有關城市、州、ASN、網路名稱、連線 WorkSpaces 數量、效能和體驗分數的詳細資訊。您也可以使用特定 IP 地址，取得從特定位置連線之使用者的詳細資訊。部署 CloudWatch 網際網路監視器以取得 ISP 資料資訊。如需詳細資訊，請參閱[使用 Amazon CloudWatch 網路監視器](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-InternetMonitor.html)。

以下是網際網路監控儀表板的範例。

![\[CloudWatch 的網際網路監控儀表板範例。\]](http://docs.aws.amazon.com/zh_tw/workspaces/latest/adminguide/images/cw-internet-monitor.png)


**使用 在 CloudWatch 中建立自訂儀表板 CloudFormation**
**注意**  
建立自訂儀表板之前，請務必使用 CloudWatch 網路監視器建立網路監視器。如需詳細資訊，請參閱[使用主控台在 Amazon CloudWatch 網路監視器中建立監視器](https://docs.aws.amazon.com//AmazonCloudWatch/latest/monitoring/CloudWatch-IM-get-started.create.html)

1. [在 CloudFormation 主控台中開啟建立堆疊頁面](https://console.aws.amazon.com/cloudformation/home#/stacks/new?stackName=YourStackName&templateURL=https://cfn-templates-global-prod-iad.s3.us-east-1.amazonaws.com/cfn-templates/workspaces_cloudwatch_internet_monitor_dashboard.yaml)。此連結會開啟頁面，並預先填入網際網路監控自訂 CloudWatch 儀表板範本的 Amazon S3 儲存貯體位置。

1. 檢閱**建立堆疊**頁面上的預設選取項目。請注意，**Amazon S3 URL** 欄位會預先填入 CloudFormation 範本的 Amazon S3 儲存貯體位置。

1. 選擇**下一步**。

1. 在**堆疊名稱**文字方塊中，輸入堆疊的名稱。

   堆疊名稱是一個識別碼，可協助您從堆疊清單中找到特定堆疊。堆疊名稱只能包含英數字元 (區分大小寫) 和連字號。必須以字母字元開頭，且長度不可超過 128 個字元。

1. 在 **DashboardName** 文字方塊中，輸入您要提供儀表板的名稱。輸入其他相關的 CloudWatch 存取群組設定資訊。

   儀表板名稱只能包含英數字元、破折號 (`–`) 和底線 ()`_`。

1. 在 **ResourcesToMonitor** 下，輸入您已啟用網際網路監控之目錄的目錄 ID。

1. 在 **MonitorName** 下，輸入您要使用的網際網路監視器名稱。

1. 選擇**下一步**。

1. 檢閱**設定堆疊選項**頁面上的預設選擇，然後選擇**下一步**。

1. 向下捲動至**轉換可能需要存取功能**，並勾選確認方塊。然後選擇**提交**以建立堆疊和自訂 CloudWatch 儀表板。
**重要**  
成本可能與自訂 CloudWatch 儀表板相關聯。如需定價的資訊，請參閱 [Amazon CloudWatch 定價](https://aws.amazon.com/cloudwatch/pricing)

1. 透過 [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1. 在左側導覽列中，選擇**儀表板**。

1. 在**自訂儀表板**下，使用您在此程序中稍早輸入的儀表板名稱選擇儀表板。

1. 您現在可以使用網際網路監控儀表板來監控 WorkSpace 的資料。