Ringkasan logging permintaan

Media CDN mencatat setiap permintaan HTTP ke Cloud Logging. Permintaan ini mencakup permintaan klien ke resource EdgeCacheService dan permintaan dari resource EdgeCacheOrigin ke origin yang dikonfigurasi untuk pengisian cache. Log biasanya dikirimkan dalam waktu mendekati real-time. Hal ini termasuk dapat dikueri di Logging dan diekspor ke Cloud Storage dan Pub/Sub.

Entri log berisi jenis informasi berikut:

  • Informasi umum yang ditampilkan di sebagian besar log Google Cloud, seperti tingkat keparahan, project ID, nomor project, dan stempel waktu.
  • HttpRequest.
  • Metadata tambahan tentang permintaan dalam structPayload, termasuk hal berikut:

    • ASN Klien
    • Data lokasi klien
    • ID (kota) dari cache yang digunakan untuk memenuhi respons
    • Time to first byte (TTFB) dan waktu hingga byte terakhir (TTLB), dalam milidetik, untuk respons level HTTP
    • Nama host SNI TLS
    • Versi TLS yang digunakan
    • Informasi Data Klien Media Umum (CMCD)

Kolom khusus cache

Objek jsonPayload dalam log Media CDN berisi metadata khusus tentang cara Media CDN menayangkan objek, baik objek tersebut disimpan dalam cache, dan status error apa pun yang ditemukan.

Kolom ini, serta contoh nilai, ditampilkan dalam tabel berikut.

Kolom Nilai contoh Detail
backendInitialLatency 0.126644940s

Duration yang diperlukan backend untuk merespons permintaan terlebih dahulu. Diukur dari saat CDN telah selesai mem-proxy permintaan ke asal hingga CDN mulai menerima byte respons dari asal.

Kolom ini hanya muncul di log untuk pengisian cache dari resource EdgeCacheOrigin.

backendLatency 0.126666342s

Durasi yang diperlukan backend untuk merespons permintaan sepenuhnya. Diukur dari saat CDN telah selesai melakukan proxy permintaan ke asal hingga CDN menerima respons lengkap dari backend.

Kolom ini hanya muncul di log untuk pengisian cache dari resource EdgeCacheOrigin.

cacheId maa-123456 Kode IATA (bandara) kota yang paling dekat dengan cache dan ID buram dari instance cache. Jika beberapa tingkat penyimpanan cache diperlukan untuk melayani permintaan karena cache sepenuhnya atau sebagian tidak ditemukan, rantai lokasi cache akan disediakan—misalnya, del-234567, bom-345678, sin-456789, dengan cache paling kanan yang paling dekat dengan pengguna.
cacheKeyFingerprint f63925711b0dd8a9ff861cd303774e6e

Sidik jari buram dari kunci cache. Permintaan yang dipetakan ke kunci cache yang sama—misalnya, permintaan yang tidak menyertakan parameter kueri, atau yang tidak menyertakan host—harus memiliki sidik jari yang sama.

Jika jumlah total permintaan Anda mirip dengan jumlah total sidik jari unik, ini mungkin menunjukkan bahwa kunci cache Anda terlalu spesifik.

cacheMode USE_ORIGIN_HEADERS cdnPolicy.cacheMode yang dikonfigurasi pada rute yang cocok dengan permintaan ini.
cacheStatus

Cache hit: hit

Full cache miss: fetch, miss, miss

Status cache di setiap node cache antara pengguna dan perisai asal, dengan nilai paling kanan merepresentasikan cache yang paling dekat dengan pengguna. Untuk mengetahui informasi selengkapnya tentang cara menafsirkan kolom ini, lihat Nilai status cache.
clientAsn ASN (Autonomous System Number), berdasarkan alamat IP klien yang terhubung.
clientCity Mountain View

Nama kota tempat permintaan berasal—misalnya, Mountain View, California.

Atribut ini juga dapat ditambahkan ke header permintaan dan respons serta mencerminkan variabel header client_city.

clientRegionCode US

Negara (atau wilayah) yang terkait dengan alamat IP klien. Ini adalah kode wilayah Unicode CLDR, seperti US atau FR. Untuk sebagian besar negara, kode ini terkait langsung dengan kode ISO-3166-2.

Atribut ini juga dapat ditambahkan ke header permintaan dan respons serta mencerminkan variabel header client_region.

cmcd Kunci CMCD dalam permintaan klien yang membantu menginformasikan kualitas layanan sisi klien. Media CDN mendukung data yang dikirim melalui header permintaan HTTP atau parameter kueri dan tidak mencatat nilai untuk kunci berikut: dl (batas waktu), nor (permintaan objek berikutnya), nrr (permintaan rentang berikutnya), ot (jenis objek), rtp (throughput maksimum yang diminta), sf (format streaming), su (startup), tb (kecepatan bit teratas), atau v (versi CMCD).
enforcedSecurityPolicy Kebijakan keamanan edge Google Cloud Armor yang berlaku untuk permintaan klien. Hal ini mencakup informasi tambahan tentang nama kebijakan, prioritas, dan tindakan yang diambil.
httpTtfb 0.157228207s Durasi dari saat proxy mulai menerima byte permintaan hingga byte pertama respons dikirim (tidak diterima).
latency 0.157415635s Durasi dari saat proxy mulai menerima byte permintaan hingga selesai menulis respons ke klien.
location Header Location dalam respons.
metroIataCode MAA Kode IATA (bandara) kota yang paling dekat dengan proxy.
origin Resource EdgeCacheOrigin tempat respons di-proxy-kan.
originalRequestId 19d92668-3948-49d8-9244-25f8252043e4 ID unik yang ditetapkan untuk permintaan yang awalnya menghasilkan respons ini. Hanya diisi jika ini berbeda dengan request_id untuk respons yang di-cache.
originIp Alamat IP yang digunakan untuk menghubungi resource EdgeCacheOrigin tempat respons di-proxy-kan.
proxyRegionCode US Negara (atau wilayah) tempat proxy berada. Ini adalah kode wilayah Unicode CLDR, seperti US atau FR. Untuk sebagian besar negara, kode ini terkait langsung dengan kode ISO-3166-2.
proxyStatus Daftar proxy HTTP perantara di jalur respons. Nilai ini ditentukan oleh RFC 9209. Ini sesuai dengan variabel header dinamis proxy_status.
rangeHeader Header Range dalam permintaan.
requestId 4bde6381-cd17-47e1-8c2a-1aaa424a1156 ID unik yang ditetapkan ke permintaan oleh proxy.
tlsCipherSuite 009C Cipher suite yang dinegosiasikan selama TLS handshake. Nilainya adalah empat digit heksadesimal yang ditentukan oleh IANA TLS Cipher Suite Registry—misalnya, 009C untuk TLS_RSA_WITH_AES_128_GCM_SHA256. Nilai ini kosong untuk koneksi klien yang tidak dienkripsi.
tlsSniHostname Indikasi nama server (sebagaimana didefinisikan dalam RFC 6066), jika disediakan oleh klien selama handshake TLS atau QUIC. Nama host dikonversi menjadi huruf kecil dan titik di akhir akan dihapus.
tlsVersion TLS 1.3 Versi TLS dinegosiasikan antara klien dan CDN selama handshake SSL. Nilai yang memungkinkan mencakup TLS 1, TLS 1.1, TLS 1.2, dan TLS 1.3.

Contoh entri log

Berikut ini contoh entri log untuk respons yang disalurkan dari cache:

{
  "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",
    "enforcedSecurityPolicy": {
      "outcome": "ACCEPT",
      "configuredAction": "ACCEPT",
      "name": "example_policy",
      "priority": 1000
    },
    "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"
}

Anda dapat mengonfigurasi logging permintaan dengan beberapa cara. Untuk mengurangi volume log dan biaya Logging secara keseluruhan, log dapat diambil sampelnya atau difilter sesuai kebutuhan.

Anda juga dapat merutekan log ke Pub/Sub, Cloud Storage, atau BigQuery untuk analisis di Google Cloud atau alat analisis log yang sudah ada.

Kebijakan retensi

Logging mendukung penetapan kebijakan retensi kustom, termasuk berdasarkan per-sink.

Langkah selanjutnya