匯出指標 - AWS 應用程式網格

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

匯出指標

重要

支援終止通知:2026 年 9 月 30 日 AWS 將停止對 的支援 AWS App Mesh。2026 年 9 月 30 日後,您將無法再存取 AWS App Mesh 主控台或 AWS App Mesh 資源。如需詳細資訊,請造訪此部落格文章,從遷移 AWS App Mesh 至 Amazon ECS Service Connect

Envoy 會同時針對其自身操作和傳入和傳出流量的各種維度發出許多統計資料。若要進一步了解 Envoy 統計資料,請參閱 Envoy 文件中的統計資料。這些指標可透過代理的管理連接埠上的/stats端點取得,通常為 9901

stat首會因您使用的是單一接聽程式還是多個接聽程式而有所不同。以下是一些說明差異的範例。

警告

如果您將單一接聽程式更新為多個接聽程式功能,您可能會因為下表中所示的更新狀態字首而面臨重大變更。

我們建議您使用 Envoy 映像1.22.2.1-prod或更新版本。這可讓您在 Prometheus 端點中查看類似的指標名稱。

單一接聽程式 (SL)/具有「輸入」接聽程式字首的現有統計資料 具有「輸入.<通訊協定>.<連接埠>」接聽程式字首的多個接聽程式 (ML)/新統計

http.*ingress*.rds.rds_ingress_http_5555.version_text

http.*ingress.http.5555*.rds.rds_ingress_http_5555.version_text

http.*ingress.http.6666*.rds.rds_ingress_http_6666.version_text

listener.0.0.0.0_15000.http.*ingress*.downstream_rq_2xx

listener.0.0.0.0_15000.http.*ingress.http.5555*.downstream_rq_2xx

listener.0.0.0.0_15000.http.*ingress.http.6666*.downstream_rq_2xx

http.*ingress*.downstream_cx_length_ms

http.*ingress.http.5555*.downstream_cx_length_ms

http.*ingress.http.6666*.downstream_cx_length_ms

如需統計資料端點的詳細資訊,請參閱 Envoy 文件中的統計資料端點。如需管理介面的詳細資訊,請參閱 啟用 Envoy Proxy 管理介面

Prometheus for App Mesh 搭配 Amazon EKS

重要

支援終止通知:2026 年 9 月 30 日 AWS 將停止對 的支援 AWS App Mesh。2026 年 9 月 30 日後,您將無法再存取 AWS App Mesh 主控台或 AWS App Mesh 資源。如需詳細資訊,請造訪此部落格文章,從 遷移 AWS App Mesh 至 Amazon ECS Service Connect

Prometheus 是一種開放原始碼監控和警示工具組。其功能之一是指定可發出其他系統所能耗指標的格式。如需 Prometheus 的詳細資訊,請參閱 Prometheus 文件中的概觀。Envoy 可以透過傳遞參數 ,透過其統計端點發出其指標/stats?format=prometheus

對於使用 Envoy 映像建置 v1.22.2.1-prod 的客戶,有兩個額外的維度來表示輸入接聽程式特定統計資料:

  • appmesh.listener_protocol

  • appmesh.listener_port

以下是 Prometheus 現有統計資料與新統計資料之間的比較。

  • 具有「輸入」接聽程式字首的現有統計資料

    envoy_http_downstream_rq_xx{appmesh_mesh="multiple-listeners-mesh",appmesh_virtual_node="foodteller-vn",envoy_response_code_class="2",envoy_http_conn_manager_prefix="ingress"} 931433
  • 具有 "inress.<protocol>.<port>" + Appmesh Envoy Image v1.22.2.1-prod 或更新版本的新統計資料

    envoy_http_downstream_rq_xx{appmesh_mesh="multiple-listeners-mesh",appmesh_virtual_node="foodteller-vn",envoy_response_code_class="2",appmesh_listener_protocol="http",appmesh_listener_port="5555",envoy_http_conn_manager_prefix="ingress"} 20
  • 具有「輸入.<通訊協定>.<連接埠>」 + 自訂 Envoy Imagebuild 的新統計資料

    envoy_http_http_5555_downstream_rq_xx{appmesh_mesh="multiple-listeners-mesh",appmesh_virtual_node="foodteller-vn",envoy_response_code_class="2",envoy_http_conn_manager_prefix="ingress"} 15983

對於多個接聽程式,cds_ingress_<mesh name>_<virtual gateway name>_self_redirect_<ingress_listener_port>_<protocol>_<port>特殊叢集將是接聽程式特定的。

  • 具有「輸入」接聽程式字首的現有統計資料

    envoy_cluster_assignment_stale{appmesh_mesh="multiple-listeners-mesh",appmesh_virtual_gateway="tellergateway-vg",Mesh="multiple-listeners-mesh",VirtualGateway="tellergateway-vg",envoy_cluster_name="cds_ingress_multiple-listeners-mesh_tellergateway-vg_self_redirect_http_15001"} 0
  • 具有 "inress.<protocol>.<port>" 的新統計資料

    envoy_cluster_assignment_stale{appmesh_mesh="multiple-listeners-mesh",appmesh_virtual_gateway="tellergateway-vg",envoy_cluster_name="cds_ingress_multiple-listeners-mesh_tellergateway-vg_self_redirect_1111_http_15001"} 0 envoy_cluster_assignment_stale{appmesh_mesh="multiple-listeners-mesh",appmesh_virtual_gateway="tellergateway-vg",envoy_cluster_name="cds_ingress_multiple-listeners-mesh_tellergateway-vg_self_redirect_2222_http_15001"} 0

安裝 Prometheus

  1. 將EKS儲存庫新增至 Helm:

    helm repo add eks https://aws.github.io/eks-charts
  2. 安裝 App Mesh Prometheus

    helm upgrade -i appmesh-prometheus eks/appmesh-prometheus \ --namespace appmesh-system

Prometheus 範例

以下是PersistentVolumeClaim為 Prometheus 持久性儲存體建立 的範例。

helm upgrade -i appmesh-prometheus eks/appmesh-prometheus \ --namespace appmesh-system \ --set retention=12h \ --set persistentVolumeClaim.claimName=prometheus

使用 Prometheus 的逐步解說

若要進一步了解 Amazon 的 Prometheus 和 Prometheus EKS

CloudWatch 適用於 App Mesh

重要

支援終止通知:2026 年 9 月 30 日 AWS 將停止對 的支援 AWS App Mesh。2026 年 9 月 30 日後,您將無法再存取 AWS App Mesh 主控台或 AWS App Mesh 資源。如需詳細資訊,請造訪此部落格文章,從遷移 AWS App Mesh 至 Amazon ECS Service Connect

CloudWatch 從 Amazon 發出 Envoy 統計資料至 EKS

您可以將 CloudWatch 代理程式安裝到您的叢集,並將其設定為從代理程式收集一部分指標。如果您還沒有 Amazon EKS叢集,則可以使用逐步解說:在 上使用 Amazon 的應用程式網格EKS中的步驟來建立叢集 GitHub。您可以遵循相同的逐步解說,將範例應用程式安裝到叢集。

若要為您的叢集設定適當的IAM許可並安裝代理程式,請遵循使用 Prometheus 指標集合安裝 CloudWatch 代理程式中的步驟。預設安裝包含 Prometheus 抓取組態,可提取 Envoy 統計資料的有用子集。如需詳細資訊,請參閱 App Mesh 的 Prometheus 指標。

若要建立 App Mesh 自訂 CloudWatch 儀表板,設定為顯示客服人員收集的指標,請遵循檢視您的 Prometheus 指標教學課程中的步驟。當流量進入 App Mesh 應用程式時,您的圖形會開始填入對應的指標。

篩選 的指標 CloudWatch

App Mesh 指標延伸提供有用的指標子集,讓您深入了解您在網格中定義的資源行為。由於 CloudWatch代理程式支援抓取 Prometheus 指標,因此您可以提供抓取組態,以選取要從 Envoy 提取並傳送至 的指標 CloudWatch。

您可以在我們的指標延伸演練中找到使用 Prometheus 抓取指標的範例。

CloudWatch 範例

您可以在我們的AWS 範例儲存庫 CloudWatch 中找到 的範例組態。

使用 的逐步解說 CloudWatch

App Mesh 的指標延伸

重要

支援終止通知:2026 年 9 月 30 日 AWS 將停止對 的支援 AWS App Mesh。2026 年 9 月 30 日後,您將無法再存取 AWS App Mesh 主控台或 AWS App Mesh 資源。如需詳細資訊,請造訪此部落格文章,從 遷移 AWS App Mesh 至 Amazon ECS Service Connect

Envoy 會產生數百個指標,細分為幾個不同的維度。這些指標與 App Mesh 的關聯方式並不直接。在虛擬服務的情況下,沒有機制可以確定哪個虛擬服務正在與指定的虛擬節點或虛擬閘道通訊。

App Mesh 指標延伸增強了在網格中執行的 Envoy 代理。此增強功能可讓代理發出其他指標,這些指標會知道您定義的資源。這小部分的其他指標將協助您更深入地了解您在 App Mesh 中定義的這些資源的行為。

若要啟用 App Mesh 指標延伸,請將環境變數設定為 APPMESH_METRIC_EXTENSION_VERSION 1

APPMESH_METRIC_EXTENSION_VERSION=1

如需 Envoy 組態變數的詳細資訊,請參閱 Envoy 組態變數

與傳入流量相關的指標

  • ActiveConnectionCount

    • envoy.appmesh.ActiveConnectionCount — 作用中TCP連線的數量。

    • 維度 — 網格、 VirtualNode、 VirtualGateway

  • NewConnectionCount

    • envoy.appmesh.NewConnectionCount — TCP連線總數。

    • 維度 — 網格、 VirtualNode、 VirtualGateway

  • ProcessedBytes

    • envoy.appmesh.ProcessedBytes — 從下游用戶端傳送和接收的總TCP位元組數。

    • 維度 — 網格、 VirtualNode、 VirtualGateway

  • RequestCount

    • envoy.appmesh.RequestCount — 已處理的HTTP請求數目。

    • 維度 — 網格、 VirtualNode、 VirtualGateway

  • GrpcRequestCount

    • envoy.appmesh.GrpcRequestCount — 已處理的 gPRC 請求數目。

    • 維度 — 網格、 VirtualNode、 VirtualGateway

與傳出流量相關的指標

根據輸出指標來自虛擬節點或虛擬閘道,您會看到不同的維度。

  • TargetProcessedBytes

    • envoy.appmesh.TargetProcessedBytes — 傳送至和接收自 Envoy 上游目標的總TCP位元組。

    • 維度

      • 虛擬節點維度 — Mesh、 VirtualNode、 TargetVirtualService TargetVirtualNode

      • 虛擬閘道維度 — Mesh、 VirtualGateway、 TargetVirtualService TargetVirtualNode

  • HTTPCode_Target_2XX_Count

    • envoy.appmesh.HTTPCode_Target_2XX_Count — 導致 2xx HTTP回應的 Envoy 上游目標HTTP請求數。

    • 維度

      • 虛擬節點維度 — Mesh、 VirtualNode、 TargetVirtualService TargetVirtualNode

      • 虛擬閘道維度 — Mesh、 VirtualGateway、 TargetVirtualService TargetVirtualNode

  • HTTPCode_Target_3XX_Count

    • envoy.appmesh.HTTPCode_Target_3XX_Count — 導致 3xx HTTP回應的 Envoy 上游目標HTTP請求數。

    • 維度

      • 虛擬節點維度 — Mesh、 VirtualNode、 TargetVirtualService TargetVirtualNode

      • 虛擬閘道維度 — Mesh、 VirtualGateway、 TargetVirtualService TargetVirtualNode

  • HTTPCode_Target_4XX_Count

    • envoy.appmesh.HTTPCode_Target_4XX_Count — 導致 4xx HTTP回應的 Envoy 上游目標HTTP請求數。

    • 維度

      • 虛擬節點維度 — Mesh、 VirtualNode、 TargetVirtualService TargetVirtualNode

      • 虛擬閘道維度 — Mesh、 VirtualGateway、 TargetVirtualService TargetVirtualNode

  • HTTPCode_Target_5XX_Count

    • envoy.appmesh.HTTPCode_Target_5XX_Count — 導致 5xx HTTP回應的 Envoy 上游目標HTTP請求數。

    • 維度

      • 虛擬節點維度 — Mesh、 VirtualNode、 TargetVirtualService TargetVirtualNode

      • 虛擬閘道維度 — Mesh、 VirtualGateway、 TargetVirtualService TargetVirtualNode

  • RequestCountPerTarget

    • envoy.appmesh.RequestCountPerTarget — 傳送至 Envoy 上游目標的請求數目。

    • 維度

      • 虛擬節點維度 — Mesh、 VirtualNode、 TargetVirtualService TargetVirtualNode

      • 虛擬閘道維度 — Mesh、 VirtualGateway、 TargetVirtualService TargetVirtualNode

  • TargetResponseTime

    • envoy.appmesh.TargetResponseTime — 從向 Envoy 上游的目標發出請求到收到完整回應所經過的時間。

    • 維度

      • 虛擬節點維度 — Mesh、 VirtualNode、 TargetVirtualService TargetVirtualNode

      • 虛擬閘道維度 — Mesh、 VirtualGateway、 TargetVirtualService TargetVirtualNode

App Mesh 的 Datadog

重要

支援終止通知:2026 年 9 月 30 日 AWS 將停止對 的支援 AWS App Mesh。2026 年 9 月 30 日後,您將無法再存取 AWS App Mesh 主控台或 AWS App Mesh 資源。如需詳細資訊,請參閱此部落格文章,從遷移 AWS App Mesh 至 Amazon ECS Service Connect

Datadog 是一種監控和安全應用程式,用於雲端應用程式的端對端監控、指標和記錄。Datadog 讓您的基礎設施、應用程式和第三方應用程式完全可見。

安裝 Datadog

  • EKS - 若要使用 設定 DatadogEKS,請遵循 Datadog 文件 中的下列步驟。

  • ECS EC2 - 若要使用 ECS 設定 DatadogEC2,請遵循 Datadog 文件 中的下列步驟。

若要進一步了解 Datadog