Mengontrol logging dan pemantauan bidang

Dokumen ini menunjukkan cara menggunakan Cloud Logging dan Cloud Monitoring untuk melihat log dan metrik untuk bidang kontrol Cloud Service Mesh.

Dengan mesh layanan, Anda dapat mengamati traffic ke dan dari layanan, sehingga pemantauan dan proses debug yang lebih lengkap dapat dilakukan tanpa mengubah kode pada layanan itu sendiri. Entri log dapat memberikan informasi penting untuk memecahkan masalah mesh layanan, termasuk data koneksi yang berhasil dan pemutusan koneksi, laporan error untuk klien yang salah dikonfigurasi, dan pemberitahuan tentang konflik resource API.

Kasus penggunaan

Berikut adalah tiga kasus penggunaan untuk logging dan pemantauan bidang kontrol:

  • Bidang kontrol Cloud Logging untuk Cloud Service Mesh: Anda dapat menyimpan, menelusuri, menganalisis, dan menyetel pemberitahuan dengan aman di semua data dan peristiwa logging Cloud Service Mesh menggunakan semua fitur Logging bawaan. Cloud Service Mesh mengekspor log ke Logging saat klien Envoy atau gRPC terhubung atau terputus, serta saat mendeteksi masalah konfigurasi.
  • Bidang kontrol Cloud Monitoring untuk Cloud Service Mesh: Cloud Service Mesh mengekspor metrik utama yang menunjukkan jumlah klien yang terhubung ke bidang kontrol Cloud Service Mesh ke Monitoring. Anda dapat menyiapkan dasbor di Monitoring dan memvisualisasikan metrik ini secara real time untuk memantau kondisi mesh saat klien terhubung dan terputus. Cara ini juga memungkinkan Anda menyiapkan SLO untuk mesh Anda.
  • Segera memecahkan masalah: Cloud Service Mesh mengekspor telemetri ke Logging dan Monitoring secara default. Tidak diperlukan penyiapan tambahan untuk mengonfigurasi logging dan pemantauan, sehingga Anda dapat memecahkan masalah kapan saja, termasuk saat menyiapkan mesh untuk pertama kalinya.

Lihat log

Untuk melihat log Cloud Service Mesh, gunakan Logs Explorer. Bagian berikut menampilkan contoh kueri untuk melihat log Cloud Service Mesh, tetapi Anda dapat menggunakan link sebelumnya untuk membuat kueri Anda sendiri.

  1. Di Konsol Google Cloud, buka halaman Logs Explorer.

    Buka Logs Explorer

  2. Dalam daftar Resource,
    • Jika Anda menggunakan API pemilihan rute layanan, pilih Gateway Scope atau Mesh.
    • Jika Anda menggunakan API yang lebih lama, pilih GCE Network.
  3. Dalam daftar Log name, pilih trafficdirector.googleapis.com/events.
  4. Klik Jalankan kueri.

Kolom entri log Cloud Service Mesh

Kolom Deskripsi
node_id ID node klien xDS, seperti yang diberikan oleh klien xDS.
client_type Jenis klien xDS yang terhubung ke Cloud Service Mesh. Nilai yang memungkinkan:
  • ENVOY
  • GRPC-JAVA
  • GRPC-C++
  • GRPC-PYTHON
  • GRPC-GO
  • UNKNOWN
node_ip Alamat IP node seperti yang disediakan oleh klien.
api_version Versi xDS API yang digunakan oleh klien xDS untuk terhubung ke Cloud Service Mesh. Nilai yang mungkin adalah V2 dan V3.
description Deskripsi teks acara dengan detail tambahan.

Contoh entri log

Contoh entri log Deskripsi
"Cloud Service Mesh tidak dapat menemukan konfigurasi apa pun untuk klien xDS." Log ini dihasilkan saat klien xDS ditolak oleh Cloud Service Mesh karena tidak ada konfigurasi. Hal ini mungkin disebabkan oleh penyiapan resource API yang relevan dengan Cloud Service Mesh yang belum selesai.
"Klien telah berhasil tersambung." Jenis pesan log ini dihasilkan setiap kali klien berhasil terhubung ke Cloud Service Mesh.
"Klien berhasil terputus." Jenis pesan log ini dihasilkan setiap kali klien yang sudah mapan terputus dari Cloud Service Mesh.
"Variabel metadata TRAFFICDIRECTOR_INTERCEPTION_PORT tidak ditetapkan. Konfigurasi pemilihan rute untuk pemroses intersepsi sudah ada, tetapi akan diabaikan." Jenis pesan log ini dihasilkan saat resource Cloud Service Mesh dikonfigurasi dengan benar, tetapi variabel TRAFFICDIRECTOR_INTERCEPTION_PORT tidak ditetapkan dalam metadata node klien xDS, sehingga konfigurasi ini tidak dapat ditambahkan ke klien.
"Pemroses intersepsi dibuat pada port 15001 yang diberikan, tetapi konfigurasi perutean tidak tersedia untuknya." Jenis pesan log ini dihasilkan saat variabel TRAFFICDIRECTOR_INTERCEPTION_PORT ditetapkan dalam metadata node klien xDS, tetapi tidak ada resource yang dikonfigurasi untuk Cloud Service Mesh guna menghasilkan respons xDS yang lengkap.
"Gagal mengirim respons ADS dari Cloud Service Mesh. Permintaan penemuan terakhir dari node memiliki versi dan/atau nonce yang salah." Jenis pesan log ini dihasilkan saat Cloud Service Mesh tidak dapat memproses respons xDS dengan benar karena komunikasi yang rusak dari klien xDS. Pesan ini menunjukkan error penerapan pada klien. Sebaiknya periksa log klien.
"Klien mengirimkan traffic lintas region ke layanan backend backend_service_id. Wilayah sumber: source_region Wilayah tujuan: destination_region1, destination_region2" Jenis pesan log ini dihasilkan saat klien melaporkan ke Cloud Service Mesh bahwa traffic lintas region dikirim dari region sumber ke satu atau beberapa region tujuan.

Lihat metrik

Cloud Service Mesh mengekspor tiga metrik ke Cloud Monitoring: xDS API Connected Streams, Request count, dan Request count by zone. xDS API Connected Streams menunjukkan jumlah klien yang terhubung ke bidang kontrol Anda; Request count menunjukkan jumlah permintaan yang dikirim ke layanan backend, yang dikelompokkan berdasarkan region sumber, region tujuan, dan status permintaan. Request count by zone menunjukkan jumlah permintaan yang dikirim ke layanan backend, yang dikelompokkan berdasarkan zona sumber, zona tujuan, dan status permintaan. Untuk melihat metrik ini, gunakan Metrics Explorer.

Untuk melihat metrik Cloud Service Mesh, lakukan hal berikut:

  1. Di Konsol Google Cloud, buka halaman Metrics Explorer.

    Buka Metrics Explorer

  2. Dalam daftar Resource type, pilih resource.
    • Jika Anda menggunakan API pemilihan rute layanan, pilih Gateway Scope atau Mesh.
    • Jika Anda menggunakan API yang lebih lama, pilih Network.
  3. Dalam daftar Metric, pilih connected_clients.
  4. Kembali ke daftar Resource type, lalu pilih Compute Engine Backend Service.
  5. Dalam daftar Metric, pilih Request count atau Request count by zone.

Atau, Anda dapat menggunakan kueri untuk melihat jumlah permintaan lintas region:

  1. Pilih MQL.
  2. Di kolom, masukkan contoh kueri berikut:
    fetch gce_backend_service
    | metric 'trafficdirector.googleapis.com/xds/server/request_count'
    | filter ( ne(metric.source_region, metric.destination_region))
    | align rate(1m)
    | every 1m
    | group_by [metric.source_region, metric.destination_region, resource.backend_service_id],
    [value_request_count_aggregate: aggregate(value.request_count)]
    
  3. Klik Jalankan kueri.

Menyiapkan metrik dan pemberitahuan berbasis log

Langkah-langkah berikut mengharuskan Anda menyiapkan metrik berbasis log. Untuk mengetahui informasi lebih lanjut mengenai cara menyiapkan metrik berbasis log, baca ringkasan.

Anda dapat mengonfigurasi pemberitahuan untuk memberi tahu Anda saat pesan yang ditentukan pengguna muncul di log yang disertakan. Pemberitahuan ini dapat memberi tahu operator ketika sesuatu yang tidak terduga terjadi. Misalnya, jika perubahan pada konfigurasi Cloud Service Mesh mengakibatkan konflik resource API, Anda akan menerima pemberitahuan tentang pesan error. Untuk menyiapkan pemberitahuan terkait metrik berbasis log, lihat Mengonfigurasi diagram dan pemberitahuan.