Logging dan pemantauan Load Balancer Jaringan Proxy

Halaman ini menunjukkan cara mengonfigurasi dan menggunakan Cloud Logging dan Cloud Monitoring untuk Network Load Balancer proxy.

Memantau resource

Tabel berikut menentukan nama resource untuk load balancer.

Load Balancer Jaringan proxy eksternal regional

Load Balancer Jaringan proxy internal regional

Load Balancer Jaringan proxy internal lintas region

Load Balancer Jaringan proxy eksternal global

Load Balancer Jaringan proxy klasik
Mencatat jenis resource yang dimonitor "Proxy Network Load Balancer Rule"
l4_proxy_rule
"Aturan Load Balancer Jaringan Proxy Eksternal Global"
tcp_ssl_proxy_rule
Memantau jenis resource yang dimonitor "Proxy Network Load Balancer Rule"
l4_proxy_rule
"Aturan Load Balancer Jaringan Proxy Eksternal Global"
tcp_ssl_proxy_rule

Logging untuk Load Balancer Jaringan Proxy

Log memberikan informasi yang berguna untuk memecahkan masalah dan memantau load balancer. Log digabungkan untuk setiap koneksi dan memberi Anda insight tentang cara setiap koneksi dirutekan ke backend penayangan.

Tidak ada biaya tambahan untuk menggunakan log. Namun, berdasarkan cara Anda mengimpor log, harga standar untuk Cloud Logging, BigQuery, atau Pub/Sub berlaku. Selain itu, mengaktifkan log tidak memengaruhi performa load balancer.

Pengambilan sampel dan pengumpulan log

Koneksi yang keluar dan masuk instance virtual machine (VM) backend load balancer diambil sampelnya. Koneksi sampel ini kemudian diproses untuk membuat log. Anda mengontrol fraksi koneksi yang dimunculkan sebagai entri log sesuai dengan parameter logConfig.sampleRate. Jika logConfig.sampleRate adalah 1.0 (100%), artinya log dibuat untuk semua koneksi dan ditulis ke Cloud Logging.

Mengaktifkan logging di layanan backend baru

gcloud

Gunakan perintah gcloud compute backend-services create.

Untuk Load Balancer Jaringan proxy eksternal regional dan Load Balancer Jaringan proxy internal regional:

    gcloud compute backend-services create BACKEND_SERVICE \
        --region=REGION \
        --enable-logging \
        --logging-sample-rate=SAMPLE_RATE
    

Untuk Load Balancer Jaringan proxy eksternal global, Load Balancer Jaringan proxy klasik, atau Load Balancer Jaringan proxy internal lintas wilayah:

    gcloud compute backend-services create BACKEND_SERVICE \
        --global \
        --enable-logging \
        --logging-sample-rate=SAMPLE_RATE
    

Ganti kode berikut:

  • BACKEND_SERVICE: nama layanan backend.
  • REGION: region layanan backend yang akan dibuat.
  • SAMPLE_RATE: kolom ini hanya dapat ditentukan jika logging diaktifkan untuk layanan backend ini.

    Nilai kolom harus dari 0.0 to 1.0, dengan 0.0 berarti tidak ada log yang dilaporkan dan 1.0 berarti semua koneksi dicatat ke dalam log. Mengaktifkan logging, tetapi menetapkan frekuensi sampling ke 0.0 sama dengan menonaktifkan logging. Nilai defaultnya adalah 1.0.

API

Buat permintaan POST ke metode regionBackendServices.insert:

Untuk Load Balancer Jaringan proxy internal regional:

    {
    "name": "BACKEND_SERVICE",
    "loadBalancingScheme": "INTERNAL_MANAGED",
    "logConfig": {
       "enable": true,
       "sampleRate": SAMPLE_RATE
      }
    }
    

Untuk Load Balancer Jaringan proxy eksternal regional:

    {
    "name": "BACKEND_SERVICE",
    "loadBalancingScheme": "EXTERNAL_MANAGED",
    "logConfig": {
       "enable": true,
       "sampleRate": SAMPLE_RATE
      }
    }
    

Untuk Load Balancer Jaringan proxy eksternal global:

Buat permintaan POST ke metode backendServices.insert:

    {
    "name": "BACKEND_SERVICE",
    "loadBalancingScheme": "EXTERNAL_MANAGED",
    "logConfig": {
       "enable": true,
       "sampleRate": SAMPLE_RATE
      }
    }
    

Untuk Load Balancer Jaringan proxy klasik:

Buat permintaan POST ke metode backendServices.insert:

    {
    "name": "BACKEND_SERVICE",
    "loadBalancingScheme": "EXTERNAL",
    "logConfig": {
       "enable": true,
       "sampleRate": SAMPLE_RATE
      }
    }
    

Untuk Load Balancer Jaringan proxy internal lintas region:

Buat permintaan POST ke metode backendServices.insert:

    {
    "name": "BACKEND_SERVICE",
    "loadBalancingScheme": "INTERNAL_MANAGED",
    "logConfig": {
       "enable": true,
       "sampleRate": SAMPLE_RATE
      }
    }
    

Ganti kode berikut:

  • BACKEND_SERVICE: nama layanan backend.
  • SAMPLE_RATE: kolom ini hanya dapat ditentukan jika logging diaktifkan untuk layanan backend ini.

    Nilai kolom harus dari 0.0 to 1.0, dengan 0.0 berarti tidak ada log yang dilaporkan dan 1.0 berarti semua koneksi dicatat ke dalam log. Mengaktifkan logging, tetapi menetapkan frekuensi sampling ke 0.0 sama dengan menonaktifkan logging. Nilai defaultnya adalah 1.0.

Mengaktifkan logging di layanan backend yang ada

gcloud

Gunakan perintah gcloud compute backend-services update.

Untuk Load Balancer Jaringan proxy eksternal regional dan Load Balancer Jaringan proxy internal regional:

    gcloud compute backend-services update BACKEND_SERVICE \
        --region=REGION \
        --enable-logging \
        --logging-sample-rate=SAMPLE_RATE
    

Untuk Load Balancer Jaringan proxy eksternal global, Load Balancer Jaringan proxy klasik, atau Load Balancer Jaringan proxy internal lintas region:

    gcloud compute backend-services update BACKEND_SERVICE \
        --global \
        --enable-logging \
        --logging-sample-rate=SAMPLE_RATE
    

Ganti kode berikut:

  • BACKEND_SERVICE: nama layanan backend.
  • REGION: region layanan backend yang akan dibuat.
  • SAMPLE_RATE: kolom ini hanya dapat ditentukan jika logging diaktifkan untuk layanan backend ini.

    Nilai kolom harus dari 0.0 to 1.0, dengan 0.0 berarti tidak ada log yang dilaporkan dan 1.0 berarti semua koneksi dicatat ke dalam log. Mengaktifkan logging, tetapi menetapkan frekuensi sampling ke 0.0 sama dengan menonaktifkan logging. Nilai defaultnya adalah 1.0.

API

Buat permintaan PATCH ke metode regionBackendServices/patch:

      PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/backendServices/BACKEND_SERVICE
     

Untuk Load Balancer Jaringan proxy internal regional:

    {
    "name": "BACKEND_SERVICE",
    "loadBalancingScheme": "INTERNAL_MANAGED",
    "logConfig": {
       "enable": true,
       "sampleRate": SAMPLE_RATE
      }
    }
    

Untuk Load Balancer Jaringan proxy eksternal regional:

    {
    "name": "BACKEND_SERVICE",
    "loadBalancingScheme": "EXTERNAL_MANAGED",
    "logConfig": {
       "enable": true,
       "sampleRate": SAMPLE_RATE
      }
    }
    

Untuk Load Balancer Jaringan proxy eksternal global:

Buat permintaan PATCH ke metode backendServices/patch:

      PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE
    {
    "name": "BACKEND_SERVICE",
    "loadBalancingScheme": "EXTERNAL_MANAGED",
    "logConfig": {
       "enable": true,
       "sampleRate": SAMPLE_RATE
      }
    }
    

Untuk Load Balancer Jaringan proxy klasik:

Buat permintaan PATCH ke metode backendServices/patch:

      PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE
    {
    "name": "BACKEND_SERVICE",
    "loadBalancingScheme": "EXTERNAL",
    "logConfig": {
       "enable": true,
       "sampleRate": SAMPLE_RATE
      }
    }
    

Untuk Load Balancer Jaringan proxy internal lintas region:

Buat permintaan PATCH ke metode backendServices/patch:

      PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE
    {
    "name": "BACKEND_SERVICE",
    "loadBalancingScheme": "INTERNAL_MANAGED",
    "logConfig": {
       "enable": true,
       "sampleRate": SAMPLE_RATE
      }
    }
    

Ganti kode berikut:

  • PROJECT_ID: nama project Anda.
  • BACKEND_SERVICE: nama layanan backend.
  • SAMPLE_RATE: kolom ini hanya dapat ditentukan jika logging diaktifkan untuk layanan backend ini.

    Nilai kolom harus dari 0.0 to 1.0, dengan 0.0 berarti tidak ada log yang dilaporkan dan 1.0 berarti semua koneksi dicatat ke dalam log. Mengaktifkan logging, tetapi menetapkan frekuensi sampling ke 0.0 sama dengan menonaktifkan logging. Nilai defaultnya adalah 1.0.

Menonaktifkan logging di layanan backend yang ada

gcloud

Gunakan perintah gcloud compute backend-services update.

Untuk Load Balancer Jaringan proxy eksternal regional dan Load Balancer Jaringan proxy internal regional:

gcloud compute backend-services update BACKEND_SERVICE \
   --region=REGION \
   --no-enable-logging

Untuk Load Balancer Jaringan proxy eksternal global, Load Balancer Jaringan proxy klasik, atau Load Balancer Jaringan proxy internal lintas wilayah:

gcloud compute backend-services update BACKEND_SERVICE \
   --global \
   --no-enable-logging

Ganti kode berikut:

  • BACKEND_SERVICE: nama layanan backend.
  • REGION: region layanan backend.

API

Untuk Load Balancer Jaringan proxy eksternal regional dan Load Balancer Jaringan proxy internal regional:

Buat permintaan PATCH ke metode regionBackendServices/patch:

 PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/backendServices/BACKEND_SERVICE
  {
  "logConfig": {
    "enable": false
   }
  }
 

Untuk Load Balancer Jaringan proxy eksternal global, Load Balancer Jaringan proxy klasik, atau Load Balancer Jaringan proxy internal lintas wilayah:

Buat permintaan PATCH ke metode backendServices/patch:

 PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE
  {
  "logConfig": {
    "enable": false
   }
  }
 

Ganti kode berikut:

  • PROJECT_ID: nama project Anda.
  • REGION: region layanan backend.
  • BACKEND_SERVICE: nama layanan backend.

Lihat log

Saat log diserap ke Cloud Logging dan tidak dikecualikan melalui penampung Router Log, Anda dapat membaca log menggunakan Cloud Logging API dan Google Cloud CLI.

Untuk melihat semua log, selesaikan langkah-langkah berikut.

Konsol

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

    Buka Logs Explorer

  2. Pilih jenis resource Proxy Network Load Balancer Rule.

  3. Pilih nama log loadbalancing.googleapis.com/connections.

Kueri konsol

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

    Buka Logs Explorer

  2. Klik tombol Show query.

  3. Tempel perintah berikut ke dalam kolom kueri.

    resource.type="LOG_RESOURCE_TYPE"
    logName="projects/PROJECT_ID/logs/loadbalancing.googleapis.com/connections"
    
  4. Klik Run query.

Ganti kode berikut:

  • LOG_RESOURCE_TYPE: jenis resource yang dipantau logging ditetapkan ke l4_proxy_rule atau tcp_ssl_proxy_rule.
  • PROJECT_ID: nama project Anda.

Melihat log untuk layanan backend tertentu

Untuk melihat log layanan backend tertentu, selesaikan langkah-langkah berikut.

Kueri konsol

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

    Buka Logs Explorer

  2. Klik tombol Show query.

  3. Tempel perintah berikut ke dalam kolom kueri.

    resource.type="LOG_RESOURCE_TYPE"
    logName="projects/PROJECT_ID/logs/loadbalancing.googleapis.com/connections"
    resource.labels.backend_service_name="BACKEND_SERVICE_NAME"
    
  4. Klik Run query.

Ganti kode berikut:

  • LOG_RESOURCE_TYPE: jenis resource yang dipantau logging ditetapkan ke l4_proxy_rule atau tcp_ssl_proxy_rule.
  • PROJECT_ID: nama project Anda.
  • BACKEND_SERVICE_NAME: nama layanan backend.

Melihat log untuk grup instance backend

Untuk melihat log untuk grup instance backend tertentu, selesaikan langkah-langkah berikut.

Kueri konsol

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

    Buka Logs Explorer

  2. Klik tombol Show query.

  3. Tempel perintah berikut ke dalam kolom kueri.

    resource.type="LOG_RESOURCE_TYPE"
    logName="projects/PROJECT_ID/logs/loadbalancing.googleapis.com/connections"
    resource.labels.backend_group_name="BACKEND_GROUP_NAME"
    
  4. Klik Run query.

Ganti kode berikut:

  • LOG_RESOURCE_TYPE: jenis resource yang dipantau logging ditetapkan ke l4_proxy_rule atau tcp_ssl_proxy_rule.
  • PROJECT_ID: nama project Anda.
  • BACKEND_GROUP_NAME: nama grup instance.

Apa itu log?

Entri log berisi informasi yang berguna untuk memantau dan men-debug traffic Anda. Data log berisi kolom wajib diisi, yang merupakan kolom default dari setiap data log.

Kolom Format kolom Jenis kolom: Wajib Diisi atau Opsional Deskripsi
severity
timestamp
receiveTimestamp
insertID
logName
LogEntry Wajib Kolom umum seperti yang dijelaskan dalam entri log.
resource MonitoredResource Wajib

MonitoredResource adalah jenis resource yang terkait dengan entri log.

MonitoredResourceDescriptor menjelaskan skema objek MonitoredResource dengan menggunakan nama jenis dan kumpulan label. Untuk informasi selengkapnya, lihat Label resource.

jsonPayload objek (format Struct) Wajib Payload entri log yang dinyatakan sebagai objek JSON. Objek JSON berisi kolom berikut:
  • statusDetails
  • Entri log kebijakan keamanan Google Cloud Armor
  • Kolom proxyStatus berisi string yang menentukan alasan Load Balancer Jaringan proxy eksternal global, Load Balancer Jaringan proxy eksternal regional, dan Load Balancer Jaringan proxy internal menampilkan kode error. Kolom ini tidak didukung untuk Load Balancer Jaringan proxy klasik.

    Kolom tidak dicatat ke dalam log jika nilainya berupa string kosong. Hal ini dapat terjadi jika proxy menampilkan kode error yang bukan 0, 4XX, atau 5XX.

    Kolom proxyStatus memiliki dua bagian:

Kolom log

Data log berisi kolom wajib diisi, yang merupakan kolom default dari setiap data log.

Beberapa kolom log berisi lebih dari satu bagian data dalam kolom tertentu—kolom log ini menggunakan format multi-kolom. Misalnya, kolom connection memiliki format IpConnection, yang berisi alamat IP dan port sumber dan tujuan, serta protokol, dalam satu kolom. Kolom log multi-kolom ini dijelaskan dalam tabel format data berikut.

Tabel berikut mencantumkan semua kolom log yang diperlukan untuk resource l4_proxy_rule.

Kolom Format kolom Deskripsi
koneksi IpConnection 5-Tuple yang menjelaskan koneksi ini.
startTime string Stempel waktu (format string tanggal RFC 3339) saat koneksi dari klien diterima oleh load balancer.
endTime string Stempel waktu (format string tanggal RFC 3339) saat klien atau backend menghentikan koneksi.
bytesSent int64 Jumlah byte yang dikirim dari server ke klien.
bytesReceived int64 Jumlah byte yang diterima server dari klien.

Format kolom IpConnection

Kolom Jenis Deskripsi
clientIp string Alamat IP klien
clientPort int32 Port klien. Tetapkan hanya untuk koneksi TCP dan UDP.
serverIp string Alamat IP server (IP aturan penerusan)
serverPort int32 Port server. Tetapkan hanya untuk koneksi TCP dan UDP.
protokol int32 Nomor protokol IANA

Kolom error proxyStatus

Kolom proxyStatus berisi string yang menentukan alasan load balancer menampilkan error. Ada dua bagian di kolom proxyStatus, yaitu proxyStatus error dan proxyStatus details. Bagian ini menjelaskan string yang didukung di kolom proxyStatus error.

Kolom proxyStatus error berlaku untuk load balancer berikut:

  • Load Balancer Jaringan proxy eksternal global
  • Load Balancer Jaringan proxy eksternal regional
  • Load Balancer Jaringan proxy internal lintas region
  • Load Balancer Jaringan proxy internal regional
error proxyStatus Deskripsi Kode respons yang menyertainya
destination_unavailable Load balancer menganggap backend tidak tersedia. Misalnya, upaya terbaru untuk berkomunikasi dengan backend telah gagal, atau health check mungkin telah menyebabkan kegagalan. 500, 503
connection_timeout Waktu tunggu upaya load balancer untuk membuka koneksi ke backend telah habis. 504
connection_terminated

Koneksi load balancer ke backend berakhir sebelum respons lengkap diterima.

proxyStatus error ini ditampilkan selama salah satu skenario berikut:

  • Koneksi load balancer ke backend berakhir sebelum respons lengkap diterima.
  • Koneksi TLS gagal pada handshake SSL, dan klien tidak membuat koneksi dengan load balancer.

0, 502, 503
connection_refused Koneksi load balancer ke backend ditolak. 502, 503
connection_limit_reached

Load balancer dikonfigurasi untuk membatasi jumlah koneksi yang dimilikinya ke backend, dan batas tersebut telah terlampaui.

proxyStatus error ini ditampilkan selama salah satu skenario berikut:

  • Jika backend berada dalam mode pemeliharaan, traffic tidak dapat dirutekan ke backend.
  • Jika permintaan dibatasi kapasitasnya secara lokal.
  • Envoy menangani kondisi error seperti kehabisan memori.
502, 503
destination_not_found Load balancer tidak dapat menentukan backend yang sesuai untuk digunakan untuk permintaan ini. Misalnya, backend mungkin tidak dikonfigurasi. 500, 404
dns_error Load balancer mengalami error DNS saat mencoba menemukan alamat IP untuk nama host backend. 502, 503
proxy_configuration_error Load balancer mengalami error konfigurasi internal. 500
proxy_internal_error Load balancer mengalami error internal. 0, 500, 502
proxy_internal_response Load balancer menghasilkan respons tanpa mencoba terhubung ke backend. Kode respons apa pun bergantung pada jenis masalah. Misalnya, kode respons 410 berarti backend tidak tersedia karena tunggakan pembayaran.
tls_protocol_error Load balancer mengalami error TLS selama handshake TLS. 0
tls_certificate_error Load balancer mengalami error pada saat memverifikasi sertifikat yang ditampilkan oleh server. 0
tls_alert_received Load balancer mengalami pemberitahuan TLS fatal selama TLS handshake. 0

Kolom detail proxyStatus

Kolom proxyStatus berisi string yang menentukan alasan load balancer menampilkan error. Ada dua bagian di kolom proxyStatus, yaitu proxyStatus error dan proxyStatus details. Kolom proxyStatus details bersifat opsional dan hanya ditampilkan jika informasi tambahan tersedia. Bagian ini menjelaskan string yang didukung di kolom proxyStatus details.

Kolom proxyStatus details berlaku untuk load balancer berikut:

  • Load Balancer Jaringan proxy eksternal global
  • Load Balancer Jaringan proxy eksternal regional
  • Load Balancer Jaringan proxy internal regional
  • Load Balancer Jaringan proxy internal lintas region
Detail proxyStatus Deskripsi Kode respons yang menyertainya
client_disconnected_before_any_response Koneksi ke klien terputus sebelum load balancer mengirim respons apa pun. 0
backend_connection_closed Backend secara tidak terduga menutup koneksinya ke load balancer. Hal ini dapat terjadi jika load balancer mengirim traffic ke entity lain seperti aplikasi pihak ketiga yang memiliki waktu tunggu TCP yang lebih singkat dari waktu tunggu load balancer selama 10 menit (600 detik). 502
failed_to_connect_to_backend Load balancer gagal terhubung ke backend. Kegagalan ini mencakup waktu tunggu selama fase koneksi. 503
failed_to_pick_backend Load balancer gagal memilih backend yang sehat untuk menangani permintaan. 502
handled_by_identity_aware_proxy Respons ini dibuat oleh Identity-Aware Proxy (IAP) selama memverifikasi identitas klien sebelum mengizinkan akses. 200, 302, 400, 401, 403, 500, 502
request_overall_timeout Waktu tunggu permintaan total terlampaui. 408, 503, 504
tls_version_not_supported Versi protokol TLS dikenali, tetapi tidak didukung. Error ini menyebabkan koneksi TLS ditutup. 0
unknown_psk_identity Server mengirimkan error ini saat pembuatan kunci PSK diperlukan, tetapi klien tidak memberikan identitas PSK yang dapat diterima. Error ini menyebabkan koneksi TLS ditutup. 0
no_application_protocol Dikirim oleh server saat ekstensi "application_layer_protocol_negotiation" klien hanya mengiklankan protokol yang tidak didukung server. Lihat Ekstensi negosiasi protokol lapisan aplikasi TLS. Error ini menyebabkan koneksi TLS ditutup. 0
no_certificate Tidak ada sertifikat yang ditemukan. Error ini menyebabkan koneksi TLS ditutup. 0
bad_certificate Sertifikat tidak valid, atau berisi tanda tangan yang tidak dapat diverifikasi. Error ini menyebabkan koneksi TLS ditutup. 0
unsupported_certificate Sertifikat memiliki jenis yang tidak didukung. Error ini menyebabkan koneksi TLS tertutup. 0
certificate_revoked Sertifikat dicabut oleh penandatangannya. Error ini menyebabkan koneksi TLS tertutup. 0
certificate_expired Sertifikat tidak berlaku lagi atau tidak valid. Error ini menyebabkan koneksi TLS ditutup. 0
certificate_unknown Beberapa masalah yang tidak ditentukan muncul saat memproses sertifikat, sehingga sertifikat tidak dapat diterima. Error ini menyebabkan koneksi TLS ditutup. 0
unknown_ca Rantai sertifikat atau rantai sebagian yang valid diterima, tetapi sertifikat tidak diterima karena sertifikat CA tidak dapat ditemukan atau dicocokkan dengan anchor kepercayaan yang diketahui. Error ini menyebabkan koneksi TLS ditutup. 0
unexpected_message Pesan yang tidak pantas, seperti pesan handshake yang salah atau data aplikasi yang diterima sebelum waktunya. Error ini menyebabkan koneksi TLS ditutup. 0
bad_record_mac Data diterima yang tidak dapat dihapus perlindungannya. Error ini menyebabkan koneksi TLS ditutup. 0
record_overflow Data TLSCiphertext diterima dengan panjang lebih dari 214+256 byte, atau data didekripsi ke data TLSPlaintext dengan lebih dari 214 byte (atau beberapa batas lain yang dinegosiasikan). Error ini menyebabkan koneksi TLS ditutup. 0
handshake_failure Tidak dapat menegosiasikan kumpulan parameter keamanan yang dapat diterima dengan opsi yang tersedia. Error ini menyebabkan koneksi TLS ditutup. 0
illegal_parameter Kolom dalam handshake salah atau tidak konsisten dengan kolom lainnya. Error ini menyebabkan koneksi TLS ditutup. 0
access_denied Sertifikat atau PSK yang valid diterima, tetapi saat kontrol akses diterapkan, klien tidak melanjutkan negosiasi. Error ini menyebabkan koneksi TLS ditutup. 0
decode_error Pesan tidak dapat didekode karena beberapa kolom berada di luar rentang yang ditentukan, atau panjang pesan salah. Error ini menyebabkan koneksi TLS ditutup. 0
decrypt_error Operasi kriptografi handshake (bukan lapisan data) gagal, termasuk tidak dapat memverifikasi tanda tangan dengan benar atau memvalidasi pesan yang sudah selesai atau binder PSK. Error ini menyebabkan koneksi TLS ditutup. 0
insufficient_security Negosiasi gagal secara khusus karena server memerlukan parameter yang lebih aman daripada yang didukung oleh klien. Error ini menyebabkan koneksi TLS ditutup. 0
inappropriate_fallback Dikirim oleh server sebagai respons terhadap upaya percobaan ulang koneksi yang tidak valid dari klien. Error ini menyebabkan koneksi TLS ditutup. 0
user_cancelled Pengguna membatalkan handshake karena alasan tertentu yang tidak terkait dengan kegagalan protokol. Error ini menyebabkan koneksi TLS ditutup. 0
missing_extension Dikirim oleh endpoint yang menerima pesan handshake yang tidak berisi ekstensi yang wajib dikirim untuk versi TLS yang ditawarkan atau parameter lain yang dinegosiasikan. Error ini menyebabkan koneksi TLS ditutup. 0
unsupported_extension Dikirim oleh endpoint yang menerima pesan handshake yang berisi ekstensi yang diketahui dilarang untuk disertakan dalam pesan handshake tertentu, atau menyertakan ekstensi apa pun di ServerHello atau Certificate yang tidak ditawarkan terlebih dahulu di ClientHello atau CertificateRequest yang sesuai. Error ini menyebabkan koneksi TLS ditutup. 0
unrecognized_name Dikirim oleh server jika tidak ada server yang dapat diidentifikasi berdasarkan nama yang diberikan oleh klien melalui ekstensi "server_name". Lihat definisi ekstensi TLS. 0
bad_certificate_status_response Dikirim oleh klien saat respons OCSP yang tidak valid atau tidak dapat diterima diberikan oleh server melalui ekstensi "status_request". Lihat definisi ekstensi TLS. Error ini menyebabkan koneksi TLS ditutup. 0
load_balancer_configured_resource_limits_reached Load balancer telah mencapai batas resource yang dikonfigurasi, seperti jumlah koneksi maksimum. 400, 500, 503

Entri log koneksi TLS yang gagal

Jika koneksi TLS antara klien dan load balancer gagal sebelum backend apa pun dipilih, entri log akan mencatat error. Anda dapat mengonfigurasi layanan backend dengan frekuensi sampel log yang berbeda. Jika koneksi TLS gagal, frekuensi sampel log koneksi TLS yang gagal adalah frekuensi sampel tertinggi untuk layanan backend apa pun. Misalnya, jika Anda telah mengonfigurasi dua layanan backend dengan frekuensi sampel logging sebagai 0.3 dan 0.5, frekuensi sampel log koneksi TLS yang gagal adalah 0.5.

Anda dapat mengidentifikasi koneksi TLS yang gagal dengan memeriksa detail entri log berikut:

  • Jenis error proxyStatus adalah tls_alert_received, tls_certificate_error, tls_protocol_error, atau connection_terminated.
  • Tidak ada informasi backend.

Contoh berikut menunjukkan entri log TLS yang gagal dengan kolom proxyStatus error:

   json_payload:    {
   @type: "type.googleapis.com/google.cloud.loadbalancing.type.LoadBalancerLogEntry"
   proxyStatus: "error="tls_alert_received"; details="server_to_client: handshake_failure""
   log_name: "projects/529254013417/logs/mockservice.googleapis.com%20name"
   }
   http_request {
    latency {
      nanos: 12412000
    }
    protocol: "HTTP/1.0"
    remote_ip: "127.0.0.2"
   }
  resource {
    type: "mock_internal_http_lb_rule"
    labels {
      backend_name: ""
      backend_scope: ""
      backend_scope_type: "UNKNOWN"
      backend_target_name: ""
      backend_target_type: "UNKNOWN"
      backend_type: "UNKNOWN"
      forwarding_rule_name: "l7-ilb-https-forwarding-rule-dev"
      matched_url_path_rule: "UNKNOWN"
      network_name: "lb-network"
      region: "REGION"
      target_proxy_name: "l7-ilb-https-proxy-dev"
      url_map_name: ""
    }
  }
  timestamp: "2023-08-15T16:49:30.850785Z"
  

Label resource

Tabel berikut mencantumkan label resource untuk jenis resource l4_proxy_rule.

Kolom Jenis Deskripsi
network_name string Nama jaringan VPC load balancer.
project_id string ID project Google Cloud yang terkait dengan resource ini.
region string Region tempat load balancer ditentukan.
target_proxy_name string Nama objek proxy target yang dirujuk oleh aturan penerusan.
forwarding_rule_name string Nama objek aturan penerusan.
loadbalancing_scheme_name string Atribut pada aturan penerusan dan layanan backend load balancer yang menunjukkan apakah load balancer dapat digunakan untuk traffic internal atau eksternal.
backend_target_name string Nama backend yang dipilih untuk menangani permintaan.
backend_target_type string Jenis target backend (BACKEND_SERVICE / UNKNOWN).
backend_name string Nama grup instance backend atau grup endpoint jaringan (NEG).
backend_type string

Jenis backend, baik grup instance atau NEG, atau tidak diketahui.

Cloud Logging mencatat log permintaan saat backend_type adalah UNKNOWN, meskipun logging dinonaktifkan. Misalnya, jika klien menutup koneksi ke load balancer sebelum load balancer dapat memilih backend, backend_type akan ditetapkan ke UNKNOWN dan permintaan akan dicatat ke dalam log. Log ini memberikan informasi proses debug yang berguna tentang permintaan klien yang ditutup karena load balancer tidak dapat memilih backend.

backend_scope string Cakupan backend, baik nama zona maupun nama wilayah. Mungkin berupa UNKNOWN setiap kali backend_name tidak diketahui.
backend_scope_type string Cakupan backend (REGION/ZONE). Mungkin UNKNOWN setiap kali backend_name tidak diketahui.

Pemantauan

Load Balancer Jaringan proxy mengekspor data pemantauan ke Cloud Monitoring.

Metrik pemantauan dapat digunakan untuk melakukan hal berikut:

  • Mengevaluasi konfigurasi, penggunaan, dan performa load balancer.
  • Memecahkan masalah.
  • Meningkatkan penggunaan resource dan pengalaman pengguna.

Selain dasbor standar di Monitoring, Anda dapat membuat dasbor kustom, menyiapkan pemberitahuan, dan membuat kueri metrik menggunakan Cloud Monitoring API.

Melihat dasbor Monitoring

  1. Di konsol Google Cloud, buka halaman Monitoring.

    Buka Monitoring

  2. Jika Resources muncul di panel navigasi, pilih Resources, lalu pilih Google Cloud Load Balancers. Jika tidak, pilih Dasbor, lalu pilih dasbor yang bernama Google Cloud Load Balancers.

  3. Klik nama load balancer Anda.

Di panel kiri, Anda dapat melihat berbagai detail untuk load balancer ini. Di panel kanan, Anda dapat melihat grafik deret waktu. Untuk melihat perincian tertentu, klik Perincian.

Frekuensi dan retensi pelaporan metrik

Metrik untuk load balancer diekspor ke Monitoring dalam batch perincian satu menit. Data Monitoring disimpan selama enam (6) minggu. Metrik didasarkan pada traffic sampel (frekuensi sampling bersifat dinamis dan tidak dapat disesuaikan).

Dasbor ini menyediakan analisis data dalam interval default 1H (satu jam), 6H (enam jam), 1D (satu hari), 1W (satu minggu), dan 6W (enam minggu). Anda dapat meminta analisis secara manual dalam interval berapa pun dari enam minggu hingga satu menit.

Metrik untuk Load Balancer Jaringan proxy klasik

Metrik berikut untuk Load Balancer Jaringan proxy klasik dilaporkan ke Monitoring.

Metrik Nama Deskripsi
Traffic masuk tcp_ssl_proxy/ingress_bytes_count Jumlah byte yang dikirim dari endpoint eksternal ke backend yang dikonfigurasi melalui Google Front End (GFE)—dalam byte per detik.
Traffic keluar tcp_ssl_proxy/egress_bytes_count Jumlah byte yang dikirim dari backend yang dikonfigurasi ke endpoint eksternal melalui GFE—dalam byte per detik.
Koneksi terbuka tcp_ssl_proxy/open_connections Jumlah koneksi yang terbuka pada momen sampel tertentu. Sampel diambil dengan selang waktu satu menit.
Koneksi baru per detik tcp_ssl_proxy/new_connections Jumlah koneksi yang dibuat (klien berhasil terhubung ke backend). Perincian penghitungan adalah per menit, tetapi grafik disesuaikan untuk menampilkan nilai per detik. Untuk mengetahui informasi selengkapnya, lihat dokumentasi Monitoring.
Koneksi tertutup per detik tcp_ssl_proxy/closed_connections Jumlah koneksi yang ditutup. Perincian penghitungan adalah per menit, tetapi grafik disesuaikan untuk menampilkan nilai per detik. Untuk mengetahui informasi selengkapnya, lihat dokumentasi Monitoring.
RTT frontend tcp_ssl_proxy/frontend_tcp_rtt Distribusi waktu bolak-balik (RTT) yang dihaluskan yang diukur untuk setiap koneksi antara klien dan GFE (diukur oleh stack TCP GFE, setiap kali byte lapisan aplikasi diteruskan dari GFE ke klien). RTT yang dihaluskan adalah algoritma yang menangani variasi dan anomali yang mungkin terjadi dalam pengukuran RTT.

Metrik untuk load balancer lainnya

Metrik berikut untuk Load Balancer Jaringan proxy internal regional, Load Balancer Jaringan proxy eksternal regional, Load Balancer Jaringan proxy internal lintas region, dan Load Balancer Jaringan proxy eksternal global dilaporkan ke Monitoring.

Metrik Nama Deskripsi
Traffic masuk l4_proxy/ingress_bytes_count Jumlah byte yang dikirim dari klien ke VM backend dengan menggunakan proxy. Dibuat sampelnya setiap 60 detik. Setelah pengambilan sampel, data tidak akan terlihat selama maksimal 210 detik.
Traffic keluar l4_proxy/egress_bytes_count Jumlah byte yang dikirim dari VM backend ke klien dengan menggunakan proxy. Dibuat sampelnya setiap 60 detik. Setelah pengambilan sampel, data tidak akan terlihat selama maksimal 210 detik.
Koneksi tertutup per detik l4_proxy/tcp/closed_connections_count Jumlah koneksi yang dihentikan menggunakan pesan TCP RST atau TCP FIN. Dibuat sampelnya setiap 60 detik. Setelah pengambilan sampel, data tidak akan terlihat selama maksimal 210 detik.

Memfilter dimensi untuk metrik

Metrik digabungkan untuk setiap load balancer. Metrik dapat diperinci lebih lanjut menurut dimensi berikut.

Properti Deskripsi
CAKUPAN BACKEND Cakupan (region atau zona) grup instance yang menyalurkan koneksi.
ZONA BACKEND Jika grup instance adalah grup instance zonal, zona grup instance yang menyalurkan koneksi.
REGION BACKEND Jika grup instance adalah grup instance regional, region grup instance yang menyalurkan koneksi.
KONTINEN PROXY Benua GFE yang menghentikan koneksi TCP/SSL pengguna—misalnya, America, Europe, Asia.
GRUP INSTANCE Nama grup instance yang menerima koneksi pengguna.
ATURAN PENYERAHAN Nama aturan penerusan yang digunakan untuk terhubung ke GFE.
NEGARA KLIEN Nama negara pengguna.

Langkah selanjutnya