

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

# 具有增強可觀測性指標的 Amazon ECS Container Insights
<a name="Container-Insights-enhanced-observability-metrics-ECS"></a>

具有增強可觀測性的 Container Insights 透過提供以下內容，可以更深入地了解容器化工作負載：
+ 任務和容器層級的更高指標精細度
+ 提高監控和疑難排解功能
+ 與 CloudWatch Logs 整合，適用於：
  + 將指標異常與日誌項目建立關聯
  + 執行更快的根本原因分析
  + 縮短複雜容器問題的解決時間

**使用案例**

Container Insights 具有增強的可觀測性，可擴展標準 Container Insights 的功能。它可啟用下列使用案例：
+ **任務層級疑難排解**：確定任務層級的效能瓶頸。分析任務層級指標，並將其與預留資源進行比較，以確定任務是否有足夠的處理容量 
+ **容器層級資源最佳化**：追蹤保留層級的使用率，以識別資源受限或過度佈建的容器 
+ **容器運作狀態評估**：監控重新啟動計數和狀態轉換，以偵測需要干預的不穩定容器 
+ **應用程式效能監控**：追蹤應用程式如何互相通訊，監控資源使用模式，以及最佳化資料儲存效能
+ **操作監控**：監控部署、追蹤藍色或綠色部署的任務集，並透過服務指標維護平台運作狀態

如需 Amazon ECS 指標的詳細資訊，請參閱 [Amazon ECS 服務使用率指標使用案例](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service_utilization-metrics-explanation.html)，以及具有增強可觀測性的 Container Insights 的資訊 ([具有增強可觀測性指標的 Amazon ECS Container Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Container-Insights-enhanced-observability-metrics-ECS.html))。

Container Insights 也會透過在所有任務中平均資料，顯示叢集、服務和精靈整體統計資料。這可提供服務和協助程式運作狀態的更高層級檢視，協助環境監控和容量規劃。

**注意**  
Amazon ECS 受管協助程式指標使用與服務指標相同的`ECS/ContainerInsights`命名空間和`ServiceName`維度。對於協助程式指標，`ServiceName`維度值使用 格式 `daemon:daemon-name`。例如，名為 的協助程式`my-daemon`的`ServiceName`維度值為 `daemon:my-daemon`。下表中包含`ServiceName`維度的所有指標也適用於 Managed Daemons。

下表列出具有增強可觀測性的 Container Insights 為 Amazon ECS 收集的指標和維度。這些指標會在 `ECS/ContainerInsights` 命名空間中。如需詳細資訊，請參閱[指標](cloudwatch_concepts.md#Metric)。

如果沒有在主控台中看到任何 Container Insights 指標，請確定您已完成具有增強可觀測性的 Container Insights 的設定。在完整設定具有增強可觀測性的 Container Insights 之前，指標都不會出現。如需詳細資訊，請參閱[設定具有增強可觀測性的 Container Insights](deploy-container-insights-ECS-cluster.md#set-container-insights-ECS-cluster-enhanced)。

下列是所有啟動類型可用的指標。


| 指標名稱 | 維度 | Description | 
| --- | --- | --- | 
|  `ContainerInstanceCount`  |  `ClusterName`  |  執行 Amazon ECS 代理程式並與叢集註冊的 EC2 執行個體數量。 只會針對在叢集中執行 Amazon ECS 任務的容器執行個體來收集此指標。對於沒有任何 Amazon ECS 任務的空容器執行個體，不會收集此指標。 單位：計數  | 
|  `ContainerCpuUtilized`  |  `ClusterName` `ContainerName`, `TaskId`, `ServiceName`, `ClusterName` `ContainerName`, `TaskDefinitionFamily`, `ClusterName`, `TaskId` `TaskDefinitionFamily`, `ClusterName`, `ContainerName` `ServiceName`, `ClusterName`, `ContainerName`  |  資源中容器所使用的 CPU 單位，由您正在使用的維度設定所指定。 也適用於 Managed Daemons。 單位：無  | 
|  `ContainerCpuReserved`  |  `ClusterName` `ContainerName`, `TaskId`, `ServiceName`, `ClusterName` `ContainerName`, `TaskDefinitionFamily`, `ClusterName`, `TaskId` `TaskDefinitionFamily`, `ClusterName`, `ContainerName` `ServiceName`, `ClusterName`, `ContainerName`  |  資源中容器所預留的 CPU 單位，由您正在使用的維度設定所指定。根據任務定義中定義的 CPU 預留來收集此指標，例如在任務或所有容器層級。如果在任務定義中未定義，則會使用執行個體 CPU 預留。 也適用於 Managed Daemons。 單位：無  | 
|  `ContainerCpuUtilization`  |  `TaskDefinitionFamily`, `ClusterName` `ServiceName`, `ClusterName` `ClusterName` `ClusterName`, `ServiceName`, `TaskId` `ClusterName`, `TaskDefinitionFamily`, `TaskId`   | 資源中容器所使用的 CPU 單位的總百分比，由您正在使用的維度設定所指定。 單位：百分比 | 
|  `ContainerMemoryUtilized`  |  `ClusterName` `ContainerName`, `TaskId`, `ServiceName`, `ClusterName` `ContainerName`, `TaskDefinitionFamily`, `ClusterName`, `TaskId` `TaskDefinitionFamily`, `ClusterName`, `ContainerName` `ServiceName`, `ClusterName`, `ContainerName`  |  資源中容器正在使用的記憶體，由您正在使用的維度設定所指定。 也適用於 Managed Daemons。 單位：MB  | 
|  `ContainerMemoryReserved`  |  `ClusterName` `ContainerName`, `TaskId`, `ServiceName`, `ClusterName` `ContainerName`, `TaskDefinitionFamily`, `ClusterName`, `TaskId` `TaskDefinitionFamily`, `ClusterName`, `ContainerName` `ServiceName`, `ClusterName`, `ContainerName`  |  資源中容器所預留的記憶體，由您正在使用的維度設定所指定。 根據任務定義中定義的記憶體預留來收集此指標，例如在任務或所有容器層級。如果在任務定義中未定義，則會使用執行個體記憶體預留。 也適用於 Managed Daemons。 單位：MB  | 
|  `ContainerMemoryUtilization`  |  `ClusterName` `ContainerName`, `TaskId`, `ServiceName`, `ClusterName` `ContainerName`, `TaskDefinitionFamily`, `ClusterName`, `TaskId` `TaskDefinitionFamily`, `ClusterName`, `ContainerName` `ServiceName`, `ClusterName`, `ContainerName`  | 資源中容器正在使用的記憶體總百分比，由您正在使用的維度設定所指定。 也適用於 Managed Daemons。 單位：百分比 | 
|  `ContainerNetworkRxBytes`  |  `TaskDefinitionFamily`, `ClusterName` `ServiceName`, `ClusterName` `ClusterName` `ClusterName`, `ServiceName`, `TaskId` `ClusterName`, `TaskDefinitionFamily`, `TaskId`  |  容器收到的位元組數，由您正在使用的維度所指定。從 Docker 執行期獲取此指標。 此指標僅適用於使用 `awsvpc` 或 `bridge` 網路模式的任務中的容器。 也適用於 Managed Daemons。 單位：位元組/秒  | 
|  `ContainerNetworkTxBytes`  |  `TaskDefinitionFamily`, `ClusterName` `ServiceName`, `ClusterName` `ClusterName` `ClusterName`, `ServiceName`, `TaskId` `ClusterName`, `TaskDefinitionFamily`, `TaskId`  |  容器傳輸的位元組數，由您正在使用的維度所指定。從 Docker 執行期獲取此指標。 此指標僅適用於使用 `awsvpc` 或 `bridge` 網路模式的任務中的容器。 也適用於 Managed Daemons。 單位：位元組/秒  | 
|  `ContainerStorageReadBytes`  |  `ClusterName` `ClusterName`, `ServiceName`, `ContainerName` `ClusterName`, `TaskDefinitionFamily`, `ContainerName` `ClusterName`, `ServiceName`, `TaskId`, `ContainerName` `ClusterName`, `TaskDefinitionFamily`, `TaskId`, `ContainerName`  |  資源中從容器儲存裝置讀取的位元組數，該資源由您正在使用的維度所指定。這不包括儲存裝置的讀取位元組。從 Docker 執行期獲取此指標。 也適用於 Managed Daemons。 單位：位元組  | 
|  `ContainerStorageWriteBytes`  |  `ClusterName` `ClusterName`, `ServiceName`, `ContainerName` `ClusterName`, `TaskDefinitionFamily`, `ContainerName` `ClusterName`, `ServiceName`, `TaskId`, `ContainerName` `ClusterName`, `TaskDefinitionFamily`, `TaskId`, `ContainerName`  |  容器中寫入儲存裝置的位元組數，該資源由您正在使用的維度所指定。從 Docker 執行期獲取此指標。 也適用於 Managed Daemons。 單位：位元組  | 
|  `CpuUtilized`  |  `TaskDefinitionFamily`, `ClusterName` `ServiceName`, `ClusterName` `ClusterName` `ClusterName`, `ServiceName`, `TaskId` `ClusterName`, `TaskDefinitionFamily`, `TaskId`   |  資源中任務所使用的 CPU 單位，由您正在使用的維度設定所指定。 也適用於 Managed Daemons。 單位：無  | 
|  `CpuReserved`  |  `TaskDefinitionFamily`, `ClusterName` `ServiceName`, `ClusterName` `ClusterName` `ClusterName`, `ServiceName`, `TaskId` `ClusterName`, `TaskDefinitionFamily`, `TaskId`  |  資源中任務所預留的 CPU 單位，由您正在使用的維度設定所指定。根據任務定義中定義的 CPU 預留來收集此指標，例如在任務或所有容器層級。如果在任務定義中未定義，則會使用執行個體 CPU 預留。 也適用於 Managed Daemons。 單位：無  | 
|  `DeploymentCount`  |  `ServiceName`, `ClusterName`  |  在 Amazon ECS 服務中部署的數量。 單位：計數  | 
|  `DesiredTaskCount`  |  `ServiceName`, `ClusterName`  |  Amazon ECS 服務所需的任務數。 單位：計數  | 
|  `EBSFilesystemSize`  |  `ClusterName` ,`TaskDefinitionFamily`, `VolumeName` `TaskDefinitionFamily`, `ClusterName` `ServiceName`, `ClusterName`  |  分配給您正在使用之維度所指定資源的 Amazon EBS 檔案系統儲存總量，以 GB 為單位。 此指標僅適用於在 Fargate 上使用平台版本 `1.4.0` 執行的 Amazon ECS 基礎設施上執行的任務，或使用容器代理程式版本 `1.79.0` 或更新版本的 Amazon EC2 執行個體。 也適用於 Managed Daemons。 單位：千兆位元組 (GB)  | 
|  `EBSFilesystemUtilized`  |  `ClusterName` ,`TaskDefinitionFamily`, `VolumeName` `TaskDefinitionFamily`, `ClusterName` `ServiceName`, `ClusterName`  |  您正在使用之維度所指定資源的 Amazon EBS 檔案系統儲存總量，以 GB 為單位。 此指標僅適用於在 Fargate 上使用平台版本 `1.4.0` 執行的 Amazon ECS 基礎設施上執行的任務，或使用容器代理程式版本 `1.79.0` 或更新版本的 Amazon EC2 執行個體。 對於在 Fargate 上執行的任務，Fargate 會在只有 Fargate 使用的磁碟上預留空間。Fargate 使用的空間不會產生相關費用，但您可以使用 `df` 等工具檢視此額外儲存空間。 也適用於 Managed Daemons。 單位：千兆位元組 (GB)  | 
|  `TaskEBSFilesystemUtilization`  |  `TaskDefinitionFamily`, `ClusterName` `ClusterName`, `ServiceName` `ClusterName` `ClusterName`, `ServiceName`, `TaskId` `TaskDefinitionFamily`, `ClusterName`, `TaskId`  |  所使用的維度所指定任務正在使用的 Amazon EBS 檔案系統儲存體百分比。 此指標僅適用於在 Fargate 上使用平台版本 `1.4.0` 執行的 Amazon ECS 基礎設施上執行的任務，或使用容器代理程式版本 `1.79.0` 或更新版本的 Amazon EC2 執行個體。 也適用於 Managed Daemons。 單位：百分比  | 
|  EphemeralStorageReserved [1](#ci-enhanced-metrics-ecs-storage-fargate-note)  |  `TaskDefinitionFamily`, `ClusterName` `ServiceName`, `ClusterName` `ClusterName` `ClusterName`, `ServiceName`, `TaskId` `ClusterName`, `TaskDefinitionFamily`, `TaskId`  |  資源中從暫時性儲存裝置中所預留的位元組數，該資源由您正在使用的維度所指定。暫時性儲存裝置會用於容器根檔案系統，以及容器映像和任務定義中定義的任何綁定掛載主機磁碟區。在執行中的任務中，無法變更暫時性儲存裝置的數量。 此指標僅適用於在 Fargate Linux 平台版本 1.4.0 或更新版本上執行的任務。 也適用於 Managed Daemons。 單位：千兆位元組 (GB)  | 
|  EphemeralStorageUtilized [1](Container-Insights-metrics-ECS.md#ci-metrics-ecs-storage-fargate-note)  |  `ClusterName` `ClusterName`, `TaskDefinitionFamily` `ClusterName`, `ServiceName` `ClusterName`, `ServiceName`, `TaskId` `ClusterName`, `TaskDefinitionFamily`, `TaskId`  |  資源中從暫時性儲存裝置中使用的位元組數，該資源由您正在使用的維度所指定。暫時性儲存裝置會用於容器根檔案系統，以及容器映像和任務定義中定義的任何綁定掛載主機磁碟區。在執行中的任務中，無法變更暫時性儲存裝置的數量。 此指標僅適用於在 Fargate Linux 平台版本 1.4.0 或更新版本上執行的任務。 也適用於 Managed Daemons。 單位：千兆位元組 (GB)  | 
|  `MemoryUtilized`  |  `TaskDefinitionFamily`, `ClusterName` `ServiceName`, `ClusterName` `ClusterName` `ClusterName`, `ServiceName`, `TaskId` `ClusterName`, `TaskDefinitionFamily`, `TaskId`  |  資源中任務正在使用的記憶體，由您正在使用的維度設定所指定。 也適用於 Managed Daemons。 單位：MB  | 
|  `MemoryReserved`  |  `TaskDefinitionFamily`, `ClusterName` `ServiceName`, `ClusterName` `ClusterName` `ClusterName`, `ServiceName`, `TaskId` `ClusterName`, `TaskDefinitionFamily`, `TaskId`  |  資源中任務所預留的記憶體，由您正在使用的維度設定所指定。 根據任務定義中定義的記憶體預留來收集此指標，例如在任務或所有容器層級。如果在任務定義中未定義，則會使用執行個體記憶體預留。 也適用於 Managed Daemons。 單位：MB  | 
|  `NetworkRxBytes`  |  `TaskDefinitionFamily`, `ClusterName` `ServiceName`, `ClusterName` `ClusterName` `ClusterName`, `ServiceName`, `TaskId` `ClusterName`, `TaskDefinitionFamily`, `TaskId`  |  資源收到的位元組數，由您正在使用的維度所指定。從 Docker 執行期獲取此指標。 此指標僅適用於使用 `awsvpc` 或 `bridge` 網路模式的任務中的容器。 也適用於 Managed Daemons。 單位：位元組/秒  | 
|  `NetworkTxBytes`  |  `TaskDefinitionFamily`, `ClusterName` `ServiceName`, `ClusterName` `ClusterName` `ClusterName`, `ServiceName`, `TaskId` `ClusterName`, `TaskDefinitionFamily`, `TaskId`  |  資源傳輸的位元組數，由您正在使用的維度所指定。從 Docker 執行期獲取此指標。 此指標僅適用於使用 `awsvpc` 或 `bridge` 網路模式的任務中的容器。 也適用於 Managed Daemons。 單位：位元組/秒  | 
|  `PendingTaskCount`  |  `ServiceName`, `ClusterName`  |  目前處於 `PENDING` 狀態的任務數。 單位：計數  | 
|  `RunningTaskCount`  |  `ServiceName`, `ClusterName`  |  目前處於 `RUNNING` 狀態的任務數。 單位：計數  | 
|  `RestartCount`  |  `ClusterName` `ClusterName`, `ServiceName` `ClusterName`, `TaskDefinitionFamily` `ClusterName`, `ServiceName`, `TaskId` `ClusterName`, `TaskDefinitionFamily`, `TaskId` `ClusterName`, `ServiceName`, `ContainerName` `ClusterName`, `ServiceName`, `TaskId`, `ContainerName` `TaskDefinitionFamily`, `ClusterName`, `ContainerName` `TaskDefinitionFamily`, `ClusterName`, `TaskId`, `ContainerName`  |  Amazon ECS 任務中的容器重新啟動的次數。 只會針對已啟用重新啟動政策的容器收集此指標。 也適用於 Managed Daemons。 單位：計數  | 
|  `UnHealthyContainerHealthStatus`  |  `ClusterName` `ClusterName`, `ServiceName`, `ContainerName` `ClusterName`, `TaskDefinitionFamily`, `ContainerName` `ClusterName`, `ServiceName`, `TaskId`, `ContainerName` `ClusterName`, `TaskDefinitionFamily`, `TaskId`, `ContainerName`  |  根據容器運作狀態檢查狀態的不良容器數量。當容器的運作狀態檢查傳回運作狀態不佳的狀態時，容器會被視為運作狀態不佳。 此指標只會針對已在任務定義中設定運作狀態檢查的容器收集。 當容器運作狀態為 時，指標值為 1`UNHEALTHY`，當運作狀態為 時，指標值為 0`HEALTHY`。 單位：計數  | 
|  `ServiceCount`  |  `ClusterName`  |  叢集中的服務數量。 單位：計數  | 
|  `StorageReadBytes`  |  `TaskDefinitionFamily`, `ClusterName` `ServiceName`, `ClusterName` `ClusterName` `ClusterName`, `ServiceName`, `TaskId` `ClusterName`, `TaskDefinitionFamily`, `TaskId`  |  資源中從執行個體儲存裝置讀取的位元組數，該資源由您正在使用的維度所指定。這不包括儲存裝置的讀取位元組。從 Docker 執行期獲取此指標。 也適用於 Managed Daemons。 單位：位元組  | 
|  `StorageWriteBytes`  |  `TaskDefinitionFamily`, `ClusterName` `ServiceName`, `ClusterName` `ClusterName` `ClusterName`, `ServiceName`, `TaskId` `ClusterName`, `TaskDefinitionFamily`, `TaskId`  |  資源中寫入儲存裝置的位元組數，該資源由您正在使用的維度所指定。從 Docker 執行期獲取此指標。 也適用於 Managed Daemons。 單位：位元組  | 
|  `TaskCount`  |  `ClusterName`  |  叢集中執行的任務數。 單位：計數  | 
|  `TaskCpuUtilization`  |  `TaskDefinitionFamily`, `ClusterName` `ServiceName`, `ClusterName` `ClusterName` `ClusterName`, `ServiceName`, `TaskId` `ClusterName`, `TaskDefinitionFamily`, `TaskId`   |  任務使用的 CPU 單位總百分比。 也適用於 Managed Daemons。 單位：百分比  | 
|  `TaskEphemeralStorageUtilization`  |  `TaskDefinitionFamily`, `ClusterName` `ServiceName`, `ClusterName` `ClusterName` `ClusterName`, `ServiceName`, `TaskId` `ClusterName`, `TaskDefinitionFamily`, `TaskId`   |  任務正在使用的暫時性儲存體的總百分比。 也適用於 Managed Daemons。 單位：百分比  | 
|  `TaskMemoryUtilization`  |  `TaskDefinitionFamily`, `ClusterName` `ServiceName`, `ClusterName` `ClusterName` `ClusterName`, `ServiceName`, `TaskId` `ClusterName`, `TaskDefinitionFamily`, `TaskId`   |  任務正在使用的記憶體總百分比。 也適用於 Managed Daemons。 單位：百分比  | 
|  `TaskSetCount`  |  `ServiceName`, `ClusterName`  |  服務中的任務集數。 單位：計數  | 

**注意**  
此 `EphemeralStorageReserved` 與 `EphemeralStorageUtilized` 指標僅適用於在 Fargate Linux 平台版本 1.4.0 或更新版本上執行的任務。  
Fargate 會在磁盤上保留空間。此空間僅由 Fargate 使用。我們不會向您收費。它不會顯示在這些指標中。但是，您可以在其他工具 (例如 `df`) 中看到此額外儲存空間。

當您完成 [部署 CloudWatch 代理程式以收集 Amazon ECS 上的 EC2 執行個體層級指標](deploy-container-insights-ECS-instancelevel.md) 中的步驟並使用 EC2 啟動類型時，即可使用下列指標。


| 指標名稱 | 維度 | Description | 
| --- | --- | --- | 
|  `instance_cpu_limit`  |  `ClusterName`  |  可指派至此叢集中單一 EC2 執行個體的 CPU 單位數量上限。 單位：無  | 
|  `instance_cpu_reserved_capacity`  |  `ClusterName` `InstanceId`, `ContainerInstanceId`, `ClusterName`  |  目前保留在叢集中單一 EC2 執行個體上的 CPU 百分比。 單位：百分比  | 
|  `instance_cpu_usage_total`  |  `ClusterName`  |  叢集中單一 EC2 執行個體正在使用的 CPU 單位數目。 單位：無  | 
|  `instance_cpu_utilization`  |  `ClusterName` `InstanceId`, `ContainerInstanceId`, `ClusterName`  |  叢集中單一 EC2 執行個體正在使用的 CPU 單位總百分比。 單位：百分比  | 
|  `instance_filesystem_utilization`  |  `ClusterName` `InstanceId`, `ContainerInstanceId`, `ClusterName`  |  叢集中單一 EC2 執行個體正在使用的檔案系統容量總百分比。 單位：百分比  | 
|  `instance_memory_limit`  |  `ClusterName`  |  可指派至此叢集中單一 EC2 執行個體的記憶體數量上限 (以位元組為單位)。 單位：位元組  | 
|  `instance_memory_reserved_capacity`  |  `ClusterName` `InstanceId`, `ContainerInstanceId`, `ClusterName`  |  目前保留在叢集中單一 EC2 執行個體上的記憶體百分比。 單位：百分比  | 
|  `instance_memory_utilization`  |  `ClusterName` `InstanceId`, `ContainerInstanceId`, `ClusterName`  |  叢集中單一 EC2 執行個體正在使用的記憶體總百分比。  如果將 Java ZGC 垃圾收集器用於您的應用程式，則此指標可能不準確。  單位：百分比  | 
|  `instance_memory_working_set`  |  `ClusterName`  |  叢集中單一 EC2 執行個體正在使用的記憶體數量 (以位元組為單位)。  如果將 Java ZGC 垃圾收集器用於您的應用程式，則此指標可能不準確。  單位：位元組  | 
|  `instance_network_total_bytes`  |  `ClusterName`  |  叢集中單一 EC2 執行個體上透過網路傳輸和接收的每秒位元組總數。 單位：位元組/秒  | 
|  `instance_number_of_running_tasks`  |  `ClusterName`  |  叢集中單一 EC2 執行個體上執行的任務數目。 單位：計數  | 