

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

# 檢視 Container Insights 指標
<a name="Container-Insights-view-metrics"></a>

在設定好 Container Insights 且它正在收集指標之後，您可以在 CloudWatch 主控台上檢視這些指標。

若要讓 Container Insights 指標顯示在儀表板上 , 您必須完成 Container Insights 設定。如需詳細資訊，請參閱[設定 Container Insights](deploy-container-insights.md)。

此程序會說明如何檢視 Container Insights 從收集的日誌資料自動產生的指標。本節的其餘部分將說明如何進一步深入探索您的資料，並使用 CloudWatch Logs Insights 來查看更多精細程度層級的指標。

**檢視容器洞見指標**

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

1. 在導覽窗格中，選擇 **Insights**，然後選擇 **Container Insights**。

1. 使用靠近頂端的下拉式方塊來選取要檢視的資源類型，以及特定資源。

您可以對 Container Insights 收集的任何指標設定 CloudWatch 警示。如需詳細資訊，請參閱[使用 Amazon CloudWatch 警示](CloudWatch_Alarms.md)

**注意**  
如果您已設定 CloudWatch Application Insights 來監控您的容器化應用程式，Application Insights 儀表板會出現在 Container Insights 儀表板下方。如果您尚未啟用 Application Insights，您可以選擇 Container Insights 儀表板中效能檢視下方的 **Auto-configure Application Insights** (自動設定 Application Insights)。  
如需 Application Insights 和容器化應用程式的詳細資訊，請參閱 [啟用 Application Insights 進行 Amazon ECS 和 Amazon EKS 資源監控](appinsights-setting-up-console.md#appinsights-container-insights)。

## 檢視頂端貢獻因子
<a name="Container-Insights-view-metrics-topn"></a>

對於容器深入解析效能監視中的某些檢視，您也可以查看記憶體或 CPU 或最近使用中的資源的前幾名參與者。如果您在頁面頂端附近的下拉式方塊中選取下列任何一個儀表板，則可使用此選項：
+ ECS 服務
+ ECS 任務
+ EKS 命名空間
+ EKS 服務
+ EKS Pod

當您檢視其中一種資源類型時，頁面底部會顯示一個最初依 CPU 用量排序的表格。您可以將其變更為按記憶體用量或最近活動排序。若要查看表格中其中一列的詳細資訊，您可以選取該列旁邊的核取方塊，然後選擇 **Actions** (動作)，並選擇 **Actions** (動作) 選單中的其中一個選項。

## 使用 CloudWatch Logs Insights 來檢視 Container Insights 資料
<a name="Container-Insights-CloudWatch-Logs-Insights"></a>

Container Insights 會使用[內嵌指標格式](CloudWatch_Embedded_Metric_Format.md)的效能日誌事件收集指標。這些記錄會存放在 CloudWatch Logs 中。CloudWatch 會從您可以在 CloudWatch 主控台中檢視的日誌自動產生多個指標。您也可以對使用 CloudWatch Logs Insights 查詢收集的效能資料進行更深入的分析。

如需使用 CloudWatch Logs Insights 的詳細資訊，請參閱[使用 CloudWatch Logs Insights 分析日誌資料](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AnalyzingLogData.html)。如需您可以在查詢中使用的日誌欄位詳細資訊，請參閱 [Amazon EKS 和 Kubernetes 的 Container Insights 效能日誌事件](Container-Insights-reference-performance-logs-EKS.md)。

**若要使用 CloudWatch Logs Insights 來查詢容器指標資料**

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

1. 在導覽窗格中，選擇**日誌**，然後選擇 **Logs Insights**。

   靠近螢幕頂端是查詢編輯器。當您第一次開啟 CloudWatch Logs 時，此方塊包含一個會傳回 20 個最新日誌事件的預設查詢。

1. 在查詢編輯器上方的方塊中，選取要查詢的其中一個容器洞見日誌群組。若要讓以下範例查詢運作，日誌群組名稱必須以 **performance (效能)** 為結尾。

   選取日誌群組時，CloudWatch Logs Insights 會自動偵測日誌群組中資料內的欄位，並在右側窗格的 **Discovered fields** (已探索欄位) 中顯示。它也會顯示一段時間內此日誌群組中日誌事件的長條圖。此長條圖會顯示日誌群組中符合您查詢和時間範圍的事件分佈，而不只是表格中顯示的事件。

1. 在查詢編輯器中，將預設查詢取代為以下查詢，然後選擇 **Run query (執行查詢)**。

   ```
   STATS avg(node_cpu_utilization) as avg_node_cpu_utilization by NodeName
   | SORT avg_node_cpu_utilization DESC
   ```

   此查詢顯示的節點清單會依平均節點 CPU 使用率排序。

1. 若要嘗試另一個範例，請將查詢取代為另一個查詢，並選擇 **Run query (執行查詢)**。此頁面稍後會列出更多範例查詢。

   ```
   STATS avg(number_of_container_restarts) as avg_number_of_container_restarts by PodName
   | SORT avg_number_of_container_restarts DESC
   ```

   此查詢顯示的 pod 清單會依重新啟動的平均容器數量來排序。

1. 如果您想要嘗試另一個查詢，您可以在螢幕右側使用清單中的包含欄位。如需查詢語法的詳細資訊，請參閱 [CloudWatch Logs Insights 查詢語法](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html)。

**查看您的資源清單**

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

1. 在導覽窗格中，選擇 **Resources** (資源)。

1. 預設檢視是 Container Insights 所監視的資源清單，以及您已在這些資源上設定的警示。若要查看資源的視覺化地圖，請選擇 **Map view (地圖檢視)**。

1. 從地圖檢視中，您可以將指標暫停在地圖中的任何資源上，以查看有關該資源的基本指標。您可以選擇任何資源來查看關於該資源的更詳細圖形。

## 使用案例：查看 Amazon ECS 容器中的任務層級指標
<a name="Container-Insights-CloudWatch-Logs-Insights-example"></a>

下列範例說明如何使用 CloudWatch Logs Insights，深入了解您的 Container Insights 日誌。如需更多範例，請參閱部落格[推出適用於 Amazon ECS 的 Amazon CloudWatch Container Insights](https://aws.amazon.com/blogs/mt/introducing-container-insights-for-amazon-ecs/)。

 Container Insights 不會在精細程度的任務層級自動產生指標。下列查詢會顯示 CPU 和記憶體用量的任務層級指標。

```
stats avg(CpuUtilized) as CPU, avg(MemoryUtilized) as Mem by TaskId, ContainerName
| sort Mem, CPU desc
```

## Container Insights 的其他範例查詢
<a name="Container-Insights-sample-queries"></a>

**您的 Pod 清單，依照容器重新啟動的平均次數進行排序**

```
STATS avg(number_of_container_restarts) as avg_number_of_container_restarts by PodName
| SORT avg_number_of_container_restarts DESC
```

**請求的 Pod 與正在執行的 Pod**

```
fields @timestamp, @message 
| sort @timestamp desc 
| filter Type="Pod" 
| stats min(pod_number_of_containers) as requested, min(pod_number_of_running_containers) as running, ceil(avg(pod_number_of_containers-pod_number_of_running_containers)) as pods_missing by kubernetes.pod_name 
| sort pods_missing desc
```

**叢集節點故障的計數**

```
stats avg(cluster_failed_node_count) as CountOfNodeFailures 
| filter Type="Cluster" 
| sort @timestamp desc
```

**應用程式日誌錯誤 (依容器名稱)**

```
stats count() as countoferrors by kubernetes.container_name 
| filter stream="stderr" 
| sort countoferrors desc
```