本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
匯出指標
重要
支援終止通知: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)/具有「輸入.<protocol>.<port>」接聽程式字首的新統計 |
---|---|
|
|
|
|
|
|
如需統計資料端點的詳細資訊,請參閱 Envoy 文件中的統計資料端點
搭配 Amazon EKS 的 App Mesh Prometheus
重要
支援終止通知: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 文件中的概觀/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
-
具有 "inress.<protocol>.<port>" + 自訂 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
-
將 EKS 儲存庫新增至 Helm:
helm repo add eks https://aws.github.io/eks-charts
-
安裝 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 的逐步解說
進一步了解 Prometheus 和 Prometheus 搭配 Amazon EKS
適用於 App Mesh 的 CloudWatch
重要
支援終止通知:2026 年 9 月 30 日, AWS 將停止支援 AWS App Mesh。2026 年 9 月 30 日之後,您將無法再存取 AWS App Mesh 主控台或 AWS App Mesh 資源。如需詳細資訊,請參閱此部落格文章從 遷移 AWS App Mesh 至 Amazon ECS Service Connect
從 Amazon EKS 將 Envoy 統計資料傳送至 CloudWatch
您可以將 CloudWatch Agent 安裝到您的叢集,並設定它以從您的代理收集一部分指標。如果您還沒有 Amazon EKS 叢集,則可以使用逐步解說:在 GitHub 上使用 Amazon EKS 的應用程式網格
若要為您的叢集設定適當的 IAM 許可並安裝代理程式,請遵循安裝 CloudWatch Agent with Prometheus Metrics Collection 中的步驟。預設安裝包含 Prometheus 抓取組態,可提取 Envoy 統計資料的有用子集。如需詳細資訊,請參閱 App Mesh 的 Prometheus 指標。
若要建立 App Mesh 自訂 CloudWatch 儀表板,其設定為顯示代理程式收集的指標,請遵循檢視您的 Prometheus 指標教學課程中的步驟。當流量進入 App Mesh 應用程式時,您的圖形會開始填入對應的指標。
篩選 CloudWatch 的指標
App Mesh 指標延伸提供有用的指標子集,可讓您深入了解您在網格中定義之資源的行為。由於 CloudWatch 代理程式支援抓取 Prometheus 指標,因此您可以提供抓取組態,以選取要從 Envoy 提取並傳送至 CloudWatch 的指標。
您可以在我們的指標延伸演練中找到使用 Prometheus 抓取指標
CloudWatch 範例
您可以在我們的範例AWS 儲存庫
使用 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 連線的數量。 -
維度 — Mesh、VirtualNode、VirtualGateway
-
-
NewConnectionCount
-
envoy.appmesh.NewConnectionCount
— TCP 連線總數。 -
維度 — Mesh、VirtualNode、VirtualGateway
-
-
ProcessedBytes
-
envoy.appmesh.ProcessedBytes
— 從下游用戶端傳送和接收的 TCP 位元組總數。 -
維度 — Mesh、VirtualNode、VirtualGateway
-
-
RequestCount
-
envoy.appmesh.RequestCount
— 已處理的 HTTP 請求數目。 -
維度 — Mesh、VirtualNode、VirtualGateway
-
-
GrpcRequestCount
-
envoy.appmesh.GrpcRequestCount
— 已處理的 gPRC 請求數目。 -
維度 — Mesh、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
— 對 Envoy 上游目標發出導致 2xx HTTP 回應的 HTTP 請求數量。 -
維度:
-
虛擬節點維度 — Mesh、VirtualNode、TargetVirtualService、TargetVirtualNode
-
虛擬閘道維度 — Mesh、VirtualGateway、TargetVirtualService、TargetVirtualNode
-
-
-
HTTPCode_Target_3XX_Count
-
envoy.appmesh.HTTPCode_Target_3XX_Count
— 對 Envoy 上游目標發出導致 3xx HTTP 回應的 HTTP 請求數量。 -
維度:
-
虛擬節點維度 — Mesh、VirtualNode、TargetVirtualService、TargetVirtualNode
-
虛擬閘道維度 — Mesh、VirtualGateway、TargetVirtualService、TargetVirtualNode
-
-
-
HTTPCode_Target_4XX_Count
-
envoy.appmesh.HTTPCode_Target_4XX_Count
— 對 Envoy 上游目標發出導致 4xx HTTP 回應的 HTTP 請求數量。 -
維度:
-
虛擬節點維度 — Mesh、VirtualNode、TargetVirtualService、TargetVirtualNode
-
虛擬閘道維度 — Mesh、VirtualGateway、TargetVirtualService、TargetVirtualNode
-
-
-
HTTPCode_Target_5XX_Count
-
envoy.appmesh.HTTPCode_Target_5XX_Count
— 對 Envoy 上游目標發出導致 5xx HTTP 回應的 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 - 若要使用 EKS 設定 Datadog,請遵循 Datadog 文件
中的下列步驟。 -
ECS EC2 - 若要使用 ECS EC2 設定 Datadog,請遵循 Datadog 文件
中的下列步驟。