選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

日誌 - 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 存取日誌。在 主控台中,這是在虛擬節點和虛擬閘道的記錄區段中建立或編輯工作流程。

Logging configuration interface showing HTTP access logs path field with example path.

上圖顯示適用於 Envoy 存取日誌/dev/stdout的 記錄路徑。

對於 format,請指定兩種可能格式之一json text和 模式。 會json先取得金鑰對並將其轉換為 JSON 結構,再將其傳遞給 Envoy。

下列程式碼區塊顯示您可以在 中使用的 JSON 表示法 AWS CLI。

"logging": { "accessLog": { "file": { "path": "/dev/stdout", "format" : { // Exactly one of json or text should be specified "json": [ // json will be implemented with key pairs { "key": "string", "value": "string" } ] "text": "string" //e.g. "%LOCAL_REPLY_BODY%:%RESPONSE_CODE%:path=%REQ(:path)%\n" } } } }
重要

請務必檢查輸入模式是否適用於 Envoy,否則 Envoy 會拒絕更新,並將最新的變更存放在 中error state

當您將 Envoy 存取日誌傳送至 時/dev/stdout,它們會與 Envoy 容器日誌混合。您可以使用 等標準 Docker 日誌驅動程式,將它們匯出至日誌儲存和處理服務,例如 CloudWatch Logsawslogs。如需詳細資訊,請參閱《Amazon ECS 開發人員指南》中的使用 awslogs Log Driver。若要僅匯出 Envoy 存取日誌 (並忽略其他 Envoy 容器日誌),您可以將 ENVOY_LOG_LEVEL 設定為 off。您可以包含格式字串 來記錄沒有查詢字串的請求%REQ_WITHOUT_QUERY(X?Y):Z%。如需範例,請參閱 ReqWithoutQuery Formatter。如需詳細資訊,請參閱 Envoy 文件中的存取日誌

在 Kubernetes 上啟用存取日誌

使用適用於 Kubernetes 的 App Mesh Controller 時,您可以將記錄組態新增至虛擬節點規格,以使用存取記錄來設定虛擬節點,如下列範例所示。

--- apiVersion: appmesh.k8s.aws/v1beta2 kind: VirtualNode metadata: name: virtual-node-name namespace: namespace spec: listeners: - portMapping: port: 9080 protocol: http serviceDiscovery: dns: hostName: hostname logging: accessLog: file: path: "/dev/stdout"

您的叢集必須有日誌轉送器才能收集這些日誌,例如 Fluentd。如需詳細資訊,請參閱將 Fluentd 設定為 DaemonSet,以將日誌傳送至 CloudWatch Logs

Envoy 也會將各種偵錯日誌從其篩選條件寫入 stdout。這些日誌有助於深入了解 Envoy 與 App Mesh 的通訊,以及service-to-service流量。您可以使用 ENVOY_LOG_LEVEL環境變數來設定特定記錄層級。例如,以下文字來自範例偵錯日誌,其中顯示 Envoy 針對特定 HTTP 請求比對的叢集。

[debug][router] [source/common/router/router.cc:434] [C4][S17419808847192030829] cluster 'cds_ingress_howto-http2-mesh_color_client_http_8080' match for URL '/ping'

Firelens 和 Cloudwatch

Firelens 是容器日誌路由器,可用來收集 Amazon ECS 和 的日誌 AWS Fargate。您可以在我們的AWS 範例儲存庫中找到使用 Firelens 的範例。

您可以使用 CloudWatch 來收集記錄資訊和指標。您可以在 App Mesh 文件的匯出指標區段中找到 CloudWatch 的詳細資訊。

下一個主題:

Envoy 指標

上一個主題:

可觀測性
隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。