檢視 Container Insights 指標 - Amazon CloudWatch

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

檢視 Container Insights 指標

設定 Container Insights 並收集指標後,您可以在 CloudWatch 主控台中檢視這些指標。

若要讓 Container Insights 指標顯示在儀表板上 , 您必須完成 Container Insights 設定。如需詳細資訊,請參閱設定 Container Insights

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

檢視容器洞見指標
  1. 在 開啟 CloudWatch 主控台https://console.aws.amazon.com/cloudwatch/

  2. 在導覽窗格中,選擇 Insights,然後選擇 Container Insights

  3. Container Insights 下方的下拉式方塊中,選擇效能監控

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

您可以在 Container Insights 收集的任何指標上設定 CloudWatch 警示。如需詳細資訊,請參閱 使用 Amazon CloudWatch 警示

注意

如果您已設定 CloudWatch Application Insights 來監控容器化應用程式,Application Insights 儀表板會顯示在 Container Insights 儀表板下方。如果您尚未啟用 Application Insights,您可以選擇 Container Insights 儀表板中效能檢視下方的 Auto-configure Application Insights (自動設定 Application Insights)。

如需 Application Insights 和容器化應用程式的詳細資訊,請參閱 啟用 Application Insights for Amazon ECS和 Amazon EKS 資源監控

檢視頂端貢獻因子

如需 Container Insights 效能監控中的某些檢視,您也可以依記憶體或 CPU或最近作用中的資源來查看主要貢獻者。如果您在頁面頂端附近的下拉式方塊中選取下列任何一個儀表板,則可使用此選項:

  • ECS 服務

  • ECS 任務

  • EKS 命名空間

  • EKS 服務

  • EKS Pod

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

使用 CloudWatch Logs Insights 檢視 Container Insights 資料

Container Insights 會使用內嵌指標格式的效能日誌事件收集指標。日誌會儲存在 CloudWatch Logs 中。 會自動從您可以在 CloudWatch 主控台中檢視的日誌 CloudWatch 產生數個指標。您也可以使用 CloudWatch Logs Insights 查詢,對所收集的效能資料進行更深入的分析。

如需 CloudWatch Logs Insights 的詳細資訊,請參閱使用 Logs Insights 分析 CloudWatch 日誌資料。如需您可以在查詢中使用的日誌欄位詳細資訊,請參閱 適用於 Amazon EKS和 Kubernetes 的 Container Insights 效能日誌事件

使用 CloudWatch Logs Insights 查詢容器指標資料
  1. 在 開啟 CloudWatch 主控台https://console.aws.amazon.com/cloudwatch/

  2. 在導覽窗格中,選擇 Insights

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

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

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

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

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

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

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

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

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

  6. 如果您想要嘗試另一個查詢,您可以在螢幕右側使用清單中的包含欄位。如需查詢語法的詳細資訊,請參閱 CloudWatch Logs Insights 查詢語法

查看您的資源清單
  1. 在 開啟 CloudWatch 主控台https://console.aws.amazon.com/cloudwatch/

  2. 在導覽窗格中,選擇 Resources (資源)。

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

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

使用案例:查看 Amazon ECS容器中的任務層級指標

下列範例說明如何使用 CloudWatch Logs Insights 深入探討您的 Container Insights 日誌。如需更多範例,請參閱部落格介紹 Amazon CloudWatch 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 的其他範例查詢

您的 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