要求記錄總覽

Media CDN 會將每個 HTTP 要求記錄到 Cloud Logging。這些要求包括用戶端對 EdgeCacheService 資源的要求,以及 EdgeCacheOrigin 資源對已設定來源的要求,用於填入快取。記錄檔通常會近乎即時地傳送。包括在 Logging 中可查詢,以及可匯出至 Cloud Storage 和 Pub/Sub。

記錄檔項目包含下列資訊類型:

  • 多數 Google Cloud 記錄檔所示的一般資訊,如嚴重性、專案 ID、專案編號和時間戳記。
  • HttpRequest 記錄欄位。
  • structPayload 內有關要求的其他中繼資料,包括:

    • 用戶端 ASN
    • 用戶端位置資料
    • 用於提供回覆的快取 ID (城市)
    • HTTP 層級回應的 TTFB 和 TTLB (以毫秒為單位)
    • TLS SNI 主機名稱
    • 使用的 TLS 版本
    • 通用媒體用戶端資料 (CMCD) 資訊

快取專屬欄位

Media CDN 記錄的 jsonPayload 物件包含中繼資料,說明 Media CDN 提供物件的方式、物件是否已快取,以及遇到的任何錯誤狀態。

下表列出這些欄位和範例值。

欄位 範例值 詳細資料
backendInitialLatency 0.126644940s

後端最初回應要求所花費的時間。從 CDN 結束將要求 Proxy 至來源,到 CDN 開始接收來源的回應位元組為止。

這個欄位只會出現在從 EdgeCacheOrigin 資源填入快取的記錄中。

backendLatency 0.126666342s

後端完整回應要求所需的時間。從 CDN 結束將要求 Proxy 至來源,到 CDN 從後端收到完整回應為止。

這個欄位只會出現在從 EdgeCacheOrigin 資源填入快取的記錄中。

cacheId maa-123456 最靠近快取的城市 IATA (機場) 代碼,以及快取執行個體的不透明 ID。如果因快取完全或部分未命中,需要多層快取才能處理要求,系統會提供快取位置鏈結,例如 del-234567, bom-345678, sin-456789,其中最右側的快取位置最靠近使用者。
cacheKeyFingerprint f63925711b0dd8a9ff861cd303774e6e

快取金鑰的不透明指紋。對應至相同快取金鑰的要求 (例如未納入查詢參數或主機的要求),應具有相同指紋。

如果請求總數與不重複指紋總數相近,可能表示快取金鑰過於具體。

cacheMode USE_ORIGIN_HEADERS 符合這項要求的路徑上設定的 cdnPolicy.cacheMode
cacheStatus

Cache hit: hit

Full cache miss: fetch, miss, miss

使用者與原始伺服器防護之間各快取節點的快取狀態,最右側的值代表最靠近使用者的快取。如要進一步瞭解如何解讀這個欄位,請參閱「快取狀態值」。
clientAsn 根據連線用戶端的 IP 位址判定的 ASN (自治系統編號)。
clientCity Mountain View

發出要求的城市名稱,例如加州山景城。

這項設定也可以新增至要求和回應標頭,並反映 client_city 標頭變數。

clientRegionCode US

與用戶端 IP 位址關聯的國家/地區。 這是 Unicode CLDR 區域代碼,例如 US 或 FR。大部分國家的代碼都可以與 ISO-3166-2 代碼直接對應。

這項設定也可以新增至要求和回應標頭,並反映 client_region 標頭變數。

cmcd 用戶端要求中的 CMCD 鍵,可協助提供用戶端服務品質資訊。Media CDN 支援透過 HTTP 要求標頭或查詢參數傳輸的資料,且不會記錄下列鍵的值:dl (期限)、nor (下一個物件要求)、nrr (下一個範圍要求)、ot (物件類型)、rtp (要求的最大輸送量)、sf (串流格式)、su (啟動)、tb (最高位元率) 或 v (CMCD 版本)。
compressionAlgorithmApplied br 用於壓縮這個記錄項目所參照回應的演算法。可能的值包括 brgzip
enforcedSecurityPolicy 適用於用戶端要求的 Google Cloud Armor 邊緣安全性政策。包括政策名稱、優先順序和採取的行動等額外資訊。此外,如果適用,也會提供 Google Threat Intelligence 評估資訊。
flexShieldingRegion US_EAST4 彈性防護使用的區域 (如有)。

這個欄位只會出現在從 EdgeCacheOrigin 資源填入快取的記錄中。

flexShieldingStatus SHIELDED 快取填入要求的彈性防護狀態。可能的值如下:
  • DEFAULT_GLOBAL:表示未設定彈性遮蓋
  • SHIELDED:表示系統使用透過 flexShieldingRegion 設定的區域來處理要求
  • SPILLED:表示使用 flexShieldingRegion 設定的區域無法用於要求,因此系統使用了預設來源

這個欄位只會出現在從 EdgeCacheOrigin 資源填入快取的記錄中。

httpTtfb 0.157228207s 從 Proxy 開始接收要求位元組,到傳送 (而非接收) 回應的第一個位元組為止的持續時間。
latency 0.157415635s 從 Proxy 開始接收要求位元組,到完成將回應寫入用戶端為止的持續時間。
location 回應中的 Location 標頭。
metroIataCode MAA 最靠近代理伺服器的城市 IATA (機場) 代碼。
origin 回應的 Proxy 來源 EdgeCacheOrigin 資源。
originalRequestId 19d92668-3948-49d8-9244-25f8252043e4 指派給原始產生這項回應的要求的專屬 ID。 只有在快取回應的 request_id 與這個值不同時,才會填入這個欄位。
originIp 用來從回應遭到 Proxy 處理的 EdgeCacheOrigin 資源聯絡的 IP 位址。
previewSecurityPolicy 適用於用戶端要求的 Google Cloud Armor 邊緣安全政策,並已考量預覽規則。包括政策名稱、優先順序和採取的行動等額外資訊。
proxyRegionCode US Proxy 所在的國家/地區。這是 Unicode CLDR 地區代碼,例如 US 或 FR。大部分國家的代碼都可以與 ISO-3166-2 代碼直接對應。
proxyStatus 回應路徑中的中繼 HTTP Proxy 清單。此值由 RFC 9209 定義。這會對應至 proxy_status 動態標頭變數
rangeHeader 要求中的 Range 標頭。
requestId 4bde6381-cd17-47e1-8c2a-1aaa424a1156 Proxy 指派給要求的專屬 ID。
tlsCipherSuite 009C 在 TLS 交握期間協商的加密套件。這個值是由 IANA TLS 加密套件登錄檔定義的四個十六進位數字,例如「009C for TLS_RSA_WITH_AES_128_GCM_SHA256」。對於未加密的用戶端連線,該值為空。
tlsSniHostname 伺服器名稱指標 (如 RFC 6066 中的定義),如果用戶端在 TLS 或 QUIC 交握期間提供。系統會將主機名稱轉換為小寫,並移除任何的尾隨點。
tlsVersion TLS 1.3 在 SSL 交握期間,用戶端與 CDN 之間協商的 TLS 版本。可能的值包括 TLS 1、TLS 1.1、TLS 1.2 和 TLS 1.3。

記錄項目範例

以下是從快取提供的回應記錄項目範例:

{
  "insertId": "617fa16e-0000-2ac9-9993-d4f547fe67d4@a1",
  "jsonPayload": {
    "@type": "type.googleapis.com/google.cloud.edgecache.v1.EdgeCacheLogEntry",
    "tlsVersion": "TLS 1.3",
    "tlsCipherSuite": "009C", // hex digits for the cipher negotiated
    "cacheId": "maa-132eed13faa13",
    "clientAsn": "9299", // AS the client is associated with
    "origin": "example_origin",
    "clientRegionCode": "IN",
    "metroIataCode": "bom",
    "clientCity": "Mumbai", // City name, in English
    "latency": "0.005105200s",
    "proxyStatus": "Google-Edge-Cache",
    "httpTtfb": "0.005056080s",
    "cacheMode": "FORCE_CACHE_ALL",
    "cacheKeyFingerprint": "c360ac18849b6336",
    "cacheStatus": "hit,stale",
    "compressionAlgorithmApplied": "br",
    "enforcedSecurityPolicy": {
      "outcome": "ACCEPT",
      "configuredAction": "ACCEPT",
      "name": "example_policy",
      "priority": 1000,
      "configuredAction": "DENY"
      threatIntelligence: {
        categories: [
          0: "iplist-public-clouds"
        ]
      }
    },
    "originalRequestId": "19d92668-3948-49d8-9244-25f8252043e5",
    "proxyRegionCode": "IN",
    "requestId": "4bde6381-cd17-47e1-8c2a-1aaa424a1156",
    "originIp": "74.125.128.128"
  },
  "httpRequest": {
    "requestMethod": "GET",
    "requestUrl": "https://example.com/image.jpg",
    "requestSize": "3545",
    "status": 200,
    "responseSize": "3716",
    "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36",
    "remoteIp": "62.36.0.43",
    "protocol": "HTTP/2"
  },
  "resource": {
    "type": "edgecache.googleapis.com/EdgeCacheRouteRule",
    "labels": {
      "matched_path": "/",
      "path_matcher_name": "routes",
      "service_name": "example_service",
      "resource_container": "projects/123456789",
      "location": "global",
      "route_destination": "projects/123456789/locations/global/edgeCacheOrigins/example_origin",
      "route_type": "ORIGIN"
    }
  },
  "timestamp": "2022-11-19T00:24:13.695328200Z",
  "logName": "projects/my-project/logs/edgecache.googleapis.com%2Fedge_cache_request",
  "receiveTimestamp": "2022-11-19T00:24:16.715871645Z"
}

您可以透過幾種方式設定要求記錄。如要減少記錄檔資料量和整體 Logging 費用,您可以視需要對記錄檔進行取樣或篩選。

您也可以將記錄檔傳送至 Pub/Sub、Cloud Storage 或 BigQuery,以便在 Google Cloud 或現有的記錄分析工具中進行分析。

資料保留政策

記錄功能支援設定自訂保留政策,包括以每個接收器為準的政策。

後續步驟