Mengonfigurasi logging permintaan

Halaman ini menunjukkan cara mengonfigurasi logging permintaan untuk Media CDN.

Aktifkan log

Logging dinonaktifkan secara default untuk meminimalkan data yang disimpan. Log dirutekan, difilter, dan disimpan di Cloud Logging.

  • Aktifkan logging untuk layanan Media CDN tertentu:

    gcloud edge-cache services update YOUR_SERVICE \
       --enable-logging \
       --logging-sample-rate=1.0
    
  • Nonaktifkan logging:

    gcloud edge-cache services update YOUR_SERVICE \
       --no-enable-logging
    
  • Dapatkan status logging saat ini pada layanan:

    gcloud edge-cache services describe YOUR_SERVICE
    

    Outputnya mirip dengan hal berikut ini:

    ...
    logConfig:
     enable: true
     sampleRate: 1.0
    ...
    

Menetapkan frekuensi pengambilan sampel log

Untuk volume permintaan yang besar, daripada merekam log untuk setiap permintaan, Anda mungkin lebih memilih untuk mengambil sampel log dan mengandalkan metrik untuk pemantauan dan investigasi proaktif.

Untuk hanya menyerap dan menyimpan log 10% dari permintaan Anda, tetapkan logConfig.sampleRate ke 0.1:

gcloud edge-cache services update YOUR_SERVICE \
    --enable-logging \
    --logging-sample-rate=0.1

Logging harus diaktifkan untuk mengubah frekuensi sampling.

Frekuensi sampling, kecuali jika ditentukan lain, ditetapkan secara default ke 0 (0%), yang mencatat setiap permintaan untuk layanan yang dikonfigurasi ke dalam log.

Log kueri

Untuk membuat kueri log, Anda dapat menggunakan Logs Explorer di Konsol Google Cloud, atau menggunakan Google Cloud CLI.

Untuk melihat log di Konsol Google Cloud, filter untuk jenis resource Media CDN dan (secara opsional) berdasarkan nama project dan layanan.

Kueri logging berikut menunjukkan log untuk semua layanan Media CDN Anda:

resource.type="edgecache.googleapis.com/EdgeCacheRouteRule"

Untuk memfilter log yang terkait dengan resource dan project EdgeCacheService tertentu, perluas kueri ini:

resource.type="edgecache.googleapis.com/EdgeCacheRouteRule"
resource.labels.resource_container="projects/12345678"
resource.labels.service_name="MY_PROJECT"

Untuk mencocokkan nama sebagian atau menggunakan ekspresi reguler, lihat Perbandingan bahasa kueri logging.

Contoh: Mengidentifikasi cache tidak ditemukan

Permintaan untuk suatu objek mungkin berisi cache yang tidak ditemukan, tetapi dapat menyebabkan pengisian cache karena alasan berikut:

  • Time to live (TTL) yang terlalu singkat
  • Kunci cache yang terlalu spesifik
  • Permintaan terlalu sedikit untuk tetap di-cache

Untuk mengidentifikasi cache yang tidak ditemukan, Anda dapat memfilter log di Logs Explorer.

Kueri log berikut menampilkan permintaan yang dapat di-cache (dicari), tetapi memerlukan pengisian dari asalnya:

resource.type="edgecache.googleapis.com/EdgeCacheRouteRule"
resource.labels.resource_container="projects/12345678"
resource.labels.service_name="MY_PROJECT"
jsonPayload.cacheStatus="miss"

Jika Anda perlu memfilter menurut URL tertentu, filter di kolom httpRequest.requestUrl:

httpRequest.requestUrl = "URL"

Untuk memfilter bagian URL, seperti komponen jalur, gunakan operator has:

# `:` is the `has` comparison operator

httpRequest.requestUrl: "/videos/1381381_1080.mp4"
# You can use `OR` or `AND` to filter on multiple values

httpRequest.requestUrl: ("https://media-test.example.com/" OR "https://canary.example.net")

Untuk mempelajari sintaksis komprehensif Logging untuk pencocokan dan pemfilteran lebih lanjut, lihat Menulis kueri lanjutan menggunakan bahasa kueri Log.

Filter log tersimpan

Untuk memfilter log sebelum menyimpannya—misalnya, hanya mengambil kolom yang sesuai untuk mengurangi total volume log yang perlu disimpan dan dibuat kueri—Anda dapat mengonfigurasi filter pengecualian, yang memungkinkan Anda menentukan kueri (filter) yang menyertakan atau mengecualikan kolom sebelum disimpan.

Anda juga dapat menyiapkan beberapa filter—misalnya, merekam semua permintaan cache yang tidak ditemukan atau semua permintaan untuk nama host tertentu, dan hanya mengambil sampel dari semua log.

Log rute

Media CDN terintegrasi langsung dengan Cloud Logging, yang membantu Anda menggabungkan dan merutekan log dengan cara berikut:

  • Ke tujuan penyimpanan, seperti Cloud Storage dan BigQuery

  • Untuk topik Pub/Sub, tujuan pihak ketiga dapat berlangganan untuk mengakses log

Untuk ringkasan tentang cara log dirutekan dari Logging, lihat Ringkasan pemilihan rute dan penyimpanan.

Langkah selanjutnya