Logging dan pemantauan Load Balancer Aplikasi Internal

Dokumen ini memberikan informasi yang Anda butuhkan untuk memahami metrik logging dan pemantauan untuk Load Balancer Aplikasi internal. Metrik logging dan pemantauan untuk Load Balancer Aplikasi internal regional dan Load Balancer Aplikasi internal lintas region sama.

Logging

Anda dapat mengaktifkan logging berdasarkan per layanan backend. Peta URL satu Load Balancer Aplikasi internal dapat mereferensikan lebih dari satu layanan backend. Anda mungkin perlu mengaktifkan logging untuk beberapa layanan backend, bergantung pada konfigurasi Anda.

Pengambilan sampel dan pengumpulan log

Sampel permintaan (dan respons yang terkait) yang ditangani oleh instance virtual machine (VM) backend load balancer akan diambil. Permintaan yang diambil sampelnya ini akan diproses untuk membuat log. Anda akan mengontrol pecahan permintaan yang dihasilkan sebagai entri log sesuai dengan parameter logConfig.sampleRate. Jika logConfig.sampleRate adalah 1.0 (100%), log dibuat untuk semua permintaan dan ditulis ke Cloud Logging.

Selain itu, meskipun logging dinonaktifkan untuk layanan backend, load balancer dapat menghasilkan entri log untuk permintaan yang tidak berhasil jika load balancer tidak dapat mengaitkan permintaan tersebut dengan backend tertentu.

Kolom opsional

Kumpulan data log berisi kolom wajib diisi dan kolom opsional. Bagian Informasi yang di-log mencantumkan kolom mana yang bersifat opsional dan mana yang wajib diisi. Semua kolom wajib diisi akan selalu disertakan. Anda dapat menyesuaikan kolom opsional yang ingin disimpan.

  • Jika Anda memilih include all optional, semua kolom opsional dalam format kumpulan data log akan disertakan dalam log aliran. Saat kolom opsional baru ditambahkan ke format data, log aliran akan otomatis menyertakan kolom baru.

  • Jika Anda memilih exlude all optional, semua kolom opsional akan dihapus.

  • Jika Anda memilih custom, Anda dapat menentukan kolom opsional yang ingin disertakan, seperti tls.protocol,tls.cipher.

Untuk mengetahui petunjuk tentang cara menyesuaikan kolom opsional, lihat Mengaktifkan logging di layanan backend yang ada.

Mengaktifkan logging pada layanan backend yang ada

Untuk Load Balancer Aplikasi internal regional, lakukan langkah-langkah berikut:

Konsol

  1. Di konsol Google Cloud , buka halaman Load balancing.

    Buka Load balancing

  2. Klik nama load balancer Anda.

  3. Klik Edit.

  4. Klik Backend Configuration.

  5. Klik Edit di samping layanan backend Anda.

  6. Klik Konfigurasi lanjutan (Afinitas sesi, waktu tunggu pengosongan koneksi).

  7. Klik Aktifkan logging.

  8. Tetapkan pecahan Sample rate. Anda dapat menetapkan angka dari 0.0 hingga 1.0. 0.0 berarti tidak ada permintaan yang di-log, sedangkan 1.0 berarti 100% permintaan di-log. Nilai defaultnya adalah 1.0.

  9. Opsional: Untuk menyertakan semua kolom opsional ke dalam log, di bagian Optional fields, klik Include all optional fields.

  10. Untuk menyelesaikan pengeditan layanan backend, klik Update.

  11. Untuk menyelesaikan pengeditan load balancer, klik Update.

gcloud

Untuk memperbarui layanan backend agar mengaktifkan logging, gunakan perintah gcloud compute backend-services update.

gcloud compute backend-services update BACKEND_SERVICE \
    --enable-logging \
    --logging-sample-rate=RATE \
    --region=REGION \
    --logging-optional=LOGGING_OPTIONAL_MODE \
    --logging-optional-fields=OPTIONAL_FIELDS

di mana

  • --enable-logging mengaktifkan logging untuk layanan backend tersebut.
  • --logging-sample-rate memungkinkan Anda menentukan nilai dari 0.0 hingga 1.0, dengan 0.0 berarti tidak ada permintaan yang di-log dan 1.0 berarti 100% permintaan di-log. Hanya bermakna dengan parameter --enable-logging. Jika logging diaktifkan, tetapi frekuensi sampling ditetapkan ke 0.0, hal ini sama dengan menonaktifkan logging. Nilai defaultnya adalah 1.0.
  • --logging-optional memungkinkan Anda menentukan kolom opsional yang ingin disertakan ke dalam log:

    • INCLUDE_ALL_OPTIONAL untuk menyertakan semua kolom opsional.

    • EXCLUDE_ALL_OPTIONAL (default) untuk mengecualikan semua kolom opsional.

    • CUSTOM untuk menyertakan daftar kustom kolom opsional yang Anda tentukan di OPTIONAL_FIELDS.

  • --logging-optional-fields memungkinkan Anda menentukan daftar kolom opsional yang dipisahkan koma yang ingin Anda sertakan ke dalam log.

    Misalnya, tls.protocol,tls.cipher hanya dapat ditetapkan jika LOGGING_OPTIONAL_MODE ditetapkan ke CUSTOM.

    Jika Anda menggunakan metrik kustom dan ingin me-log elemen laporan beban ORCA, Anda harus menetapkan LOGGING_OPTIONAL_MODE ke CUSTOM dan menentukan elemen mana yang harus di-log di kolom OPTIONAL_FIELDS. Contoh, orca_load_report.cpu_utilization,orca_load_report.mem_utilization.

Untuk Load Balancer Aplikasi internal lintas region, lakukan langkah-langkah berikut:

Konsol

  1. Di konsol Google Cloud , buka halaman Load balancing.

    Buka Load balancing

  2. Klik nama load balancer Anda.

  3. Klik Edit.

  4. Klik Backend Configuration.

  5. Klik Edit di samping layanan backend Anda.

  6. Klik Konfigurasi lanjutan (Afinitas sesi, waktu tunggu pengosongan koneksi).

  7. Klik Aktifkan logging.

  8. Tetapkan pecahan Sample rate. Anda dapat menetapkan angka dari 0.0 hingga 1.0. 0.0 berarti tidak ada permintaan yang di-log, sedangkan 1.0 berarti 100% permintaan di-log. Nilai defaultnya adalah 1.0.

  9. Opsional: Untuk menyertakan semua kolom opsional ke dalam log, di bagian Optional fields, klik Include all optional fields.

  10. Untuk menyelesaikan pengeditan layanan backend, klik Update.

  11. Untuk menyelesaikan pengeditan load balancer, klik Update.

gcloud

Untuk memperbarui layanan backend agar mengaktifkan logging, gunakan perintah gcloud compute backend-services update.

gcloud compute backend-services update BACKEND_SERVICE \
    --enable-logging \
    --logging-sample-rate=RATE \
    --global \
    --logging-optional=LOGGING_OPTIONAL_MODE \
    --logging-optional-fields=OPTIONAL_FIELDS

di mana

  • --enable-logging mengaktifkan logging untuk layanan backend tersebut.
  • --logging-sample-rate memungkinkan Anda menentukan nilai dari 0.0 hingga 1.0, dengan 0.0 berarti tidak ada permintaan yang di-log dan 1.0 berarti 100% permintaan di-log. Hanya bermakna dengan parameter --enable-logging. Jika logging diaktifkan, tetapi frekuensi sampling ditetapkan ke 0.0, hal ini sama dengan menonaktifkan logging. Nilai defaultnya adalah 1.0.
  • --logging-optional memungkinkan Anda menentukan kolom opsional yang ingin disertakan ke dalam log:

    • INCLUDE_ALL_OPTIONAL untuk menyertakan semua kolom opsional.

    • EXCLUDE_ALL_OPTIONAL (default) untuk mengecualikan semua kolom opsional.

    • CUSTOM untuk menyertakan daftar kustom kolom opsional yang Anda tentukan di OPTIONAL_FIELDS.

  • --logging-optional-fields memungkinkan Anda menentukan daftar kolom opsional yang dipisahkan koma yang ingin Anda sertakan ke dalam log.

    Misalnya, tls.protocol,tls.cipher hanya dapat ditetapkan jika LOGGING_OPTIONAL_MODE ditetapkan ke CUSTOM.

    Jika Anda menggunakan metrik kustom dan ingin me-log elemen laporan beban ORCA, Anda harus menetapkan LOGGING_OPTIONAL_MODE ke CUSTOM dan menentukan elemen mana yang harus di-log di kolom OPTIONAL_FIELDS. Contoh, orca_load_report.cpu_utilization,orca_load_report.mem_utilization.

Setelah Anda mengaktifkan logging di layanan backend, setiap permintaan HTTP(S) akan dicatat menggunakan Cloud Logging.

Menonaktifkan atau mengubah logging pada layanan backend yang ada

Konsol

  1. Di Konsol Google Cloud , buka halaman Load Balancing.

    Buka Load balancing

  2. Klik nama load balancer Anda.

  3. Klik Edit.

  4. Klik Backend Configuration.

  5. Klik Edit di samping layanan backend Anda.

  6. Untuk menonaktifkan logging sepenuhnya, di bagian Logging, hapus centang pada kotak Enable logging.

  7. Jika Anda mengaktifkan logging, Anda dapat menetapkan pecahan Sample rate yang berbeda. Anda dapat menetapkan angka dari 0.0 hingga 1.0. 0.0 berarti tidak ada permintaan yang di-log, sedangkan 1.0 berarti 100% permintaan di-log. Nilai defaultnya adalah 1.0. Misalnya, 0.2 berarti 20% permintaan yang diambil sampelnya menghasilkan log.

  8. Untuk menyelesaikan pengeditan layanan backend, klik Update.

  9. Untuk menyelesaikan pengeditan load balancer, klik Update.

gcloud: Mode lintas region

Nonaktifkan logging di layanan backend dengan perintah gcloud compute backend-services update.

Menonaktifkan logging sepenuhnya

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

di mana

  • --global menunjukkan bahwa layanan backend bersifat global. Gunakan kolom ini untuk layanan backend yang digunakan dengan Load Balancer Aplikasi internal lintas region.
  • --no-enable-logging menonaktifkan logging untuk layanan backend tersebut.

Mengaktifkan kolom opsional logging di layanan backend yang ada

gcloud compute backend-services update BACKEND_SERVICE \
    --global \
    --enable-logging \
    --logging-sample-rate=VALUE \
    --logging-optional=LOGGING_OPTIONAL_MODE \
    --logging-optional-fields=OPTIONAL_FIELDS

di mana

  • --logging-sample-rate memungkinkan Anda menentukan nilai dari 0.0 hingga 1.0. 0.0 berarti tidak ada permintaan yang di-log, sedangkan 1.0 berarti 100% permintaan di-log. Hanya bermakna dengan parameter --enable-logging. Jika logging diaktifkan, tetapi frekuensi sampling ditetapkan ke 0.0, hal ini sama dengan menonaktifkan logging. Nilai defaultnya adalah 1.0.
  • --logging-optional memungkinkan Anda menentukan kolom opsional yang ingin disertakan ke dalam log:

    • INCLUDE_ALL_OPTIONAL untuk menyertakan semua kolom opsional.

    • EXCLUDE_ALL_OPTIONAL (default) untuk mengecualikan semua kolom opsional.

    • CUSTOM untuk menyertakan daftar kustom kolom opsional yang Anda tentukan di OPTIONAL_FIELDS.

  • --logging-optional-fields memungkinkan Anda menentukan daftar kolom opsional yang dipisahkan koma yang ingin Anda sertakan ke dalam log.

    Misalnya, tls.protocol,tls.cipher hanya dapat ditetapkan jika LOGGING_OPTIONAL_MODE ditetapkan ke CUSTOM.

    Jika Anda menggunakan metrik kustom dan ingin me-log elemen laporan beban ORCA, Anda harus menetapkan LOGGING_OPTIONAL_MODE ke CUSTOM dan menentukan elemen mana yang harus di-log di kolom OPTIONAL_FIELDS. Contoh, orca_load_report.cpu_utilization,orca_load_report.mem_utilization.

Memperbarui mode opsional logging dari CUSTOM ke mode lainnya

gcloud compute backend-services update BACKEND_SERVICE \
    --global \
    --enable-logging \
    --logging-sample-rate=VALUE \
    --logging-optional=LOGGING_OPTIONAL_MODE \
    --logging-optional-fields=

di mana

  • --logging-optional memungkinkan Anda menentukan kolom opsional yang ingin disertakan ke dalam log:

    • INCLUDE_ALL_OPTIONAL untuk menyertakan semua kolom opsional.

    • EXCLUDE_ALL_OPTIONAL (default) untuk mengecualikan semua kolom opsional.

  • --logging-optional-fields harus dikonfigurasi secara eksplisit seperti yang ditunjukkan untuk menghapus kolom CUSTOM yang ada. API tidak memungkinkan Anda menggabungkan mode non-CUSTOM dengan kolom CUSTOM.

Mengubah frekuensi sampel logging

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

gcloud: Mode regional

Nonaktifkan logging di layanan backend dengan perintah gcloud compute backend-services update.

Menonaktifkan logging sepenuhnya

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

di mana

  • --region menunjukkan bahwa layanan backend bersifat regional. Gunakan kolom ini untuk layanan backend yang digunakan dengan Load Balancer Aplikasi internal regional.
  • --no-enable-logging menonaktifkan logging untuk layanan backend tersebut.

Mengaktifkan kolom opsional logging di layanan backend yang ada

gcloud compute backend-services update BACKEND_SERVICE \
    --region=REGION \
    --enable-logging \
    --logging-sample-rate=VALUE \
    --logging-optional=LOGGING_OPTIONAL_MODE \
    --logging-optional-fields=OPTIONAL_FIELDS

di mana

  • --logging-sample-rate memungkinkan Anda menentukan nilai dari 0.0 hingga 1.0. 0.0 berarti tidak ada permintaan yang di-log, sedangkan 1.0 berarti 100% permintaan di-log. Hanya bermakna dengan parameter --enable-logging. Jika logging diaktifkan, tetapi frekuensi sampling ditetapkan ke 0.0, hal ini sama dengan menonaktifkan logging. Nilai defaultnya adalah 1.0.
  • --logging-optional memungkinkan Anda menentukan kolom opsional yang ingin disertakan ke dalam log:

    • INCLUDE_ALL_OPTIONAL untuk menyertakan semua kolom opsional.

    • EXCLUDE_ALL_OPTIONAL (default) untuk mengecualikan semua kolom opsional.

    • CUSTOM untuk menyertakan daftar kustom kolom opsional yang Anda tentukan di OPTIONAL_FIELDS.

  • --logging-optional-fields memungkinkan Anda menentukan daftar kolom opsional yang dipisahkan koma yang ingin Anda sertakan ke dalam log.

    Misalnya, tls.protocol,tls.cipher hanya dapat ditetapkan jika LOGGING_OPTIONAL_MODE ditetapkan ke CUSTOM.

    Jika Anda menggunakan metrik kustom dan ingin me-log elemen laporan beban ORCA, Anda harus menetapkan LOGGING_OPTIONAL_MODE ke CUSTOM dan menentukan elemen mana yang harus di-log di kolom OPTIONAL_FIELDS. Contoh, orca_load_report.cpu_utilization,orca_load_report.mem_utilization.

Memperbarui mode opsional logging dari CUSTOM ke mode lainnya

gcloud compute backend-services update BACKEND_SERVICE \
    --region=REGION \
    --enable-logging \
    --logging-sample-rate=VALUE \
    --logging-optional=LOGGING_OPTIONAL_MODE \
    --logging-optional-fields=

di mana

  • --logging-optional memungkinkan Anda menentukan kolom opsional yang ingin disertakan ke dalam log:

    • INCLUDE_ALL_OPTIONAL untuk menyertakan semua kolom opsional.

    • EXCLUDE_ALL_OPTIONAL (default) untuk mengecualikan semua kolom opsional.

  • --logging-optional-fields harus dikonfigurasi secara eksplisit seperti yang ditunjukkan untuk menghapus kolom CUSTOM yang ada. API tidak memungkinkan Anda menggabungkan mode non-CUSTOM dengan kolom CUSTOM.

Mengubah frekuensi sampel logging

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

Cara melihat log

Untuk melihat log, di konsol Google Cloud , buka halaman Logs Explorer.

Log Load Balancer Aplikasi Internal diindeks terlebih dahulu berdasarkan jaringan, lalu berdasarkan region.

  • Untuk melihat log semua Load Balancer Aplikasi internal, pilih Internal Application Load Balancer Rule di menu pull-down pertama.
  • Untuk melihat log hanya untuk satu jaringan, pilih Internal Application Load Balancer Rule, lalu pilih nama jaringan.
  • Untuk melihat log hanya untuk satu region jaringan, pilih Internal Application Load Balancer Rule > NETWORK > REGION.

Kolom log berjenis boolean biasanya hanya akan muncul jika memiliki nilai true. Jika kolom boolean memiliki nilai false, kolom tersebut akan dihilangkan dari log.

Encoding UTF-8 diterapkan untuk kolom log. Karakter yang bukan karakter UTF-8 akan diganti dengan tanda tanya.

Anda dapat mengonfigurasi ekspor metrik berbasis log untuk log resource (resource.type="internal_http_lb_rule"). Metrik yang dibuat didasarkan pada resource "Aturan Load Balancer Aplikasi Internal", yang tersedia di dasbor Cloud Monitoring:

Buka Monitoring

Yang dicatat di log

Entri log Load Balancer Aplikasi Internal berisi informasi yang berguna untuk memantau dan men-debug traffic HTTP(S) Anda. Kumpulan data log berisi kolom wajib diisi, yang merupakan kolom default setiap kumpulan data log, dan kolom opsional yang menambahkan informasi tambahan terkait traffic HTTP(S) Anda. Kolom opsional dapat dihilangkan untuk menghemat biaya penyimpanan. Entri log berisi jenis informasi berikut:

  • Informasi umum yang ditampilkan di sebagian besar log, seperti tingkat keparahan, project ID, nomor project, dan stempel waktu seperti yang dijelaskan dalam LogEntry. Google Cloud
  • Kolom log HttpRequest.

Beberapa kolom log memiliki format multi-kolom, dengan lebih dari satu data di kolom tertentu. Misalnya, kolom tls memiliki format TlsDetails, yang berisi protokol TLS dan cipher TLS dalam satu kolom. Kolom multi-kolom ini dijelaskan dalam tabel format kumpulan data berikut.

Kolom Jenis Jenis kolom: Wajib atau Opsional Deskripsi
logName string Wajib Nama resource log tempat entri log ini berada.
Dalam formulir "projects/PROJECT_ID/logs/requests".
timestamp string Wajib Waktu saat permintaan dimulai.
severity LogSeverity format Wajib Tingkat keparahan entri log. Nilai defaultnya adalah LogSeverity.DEFAULT.
httpRequest Objek HttpRequest Wajib Proto HttpRequest yang menjelaskan permintaan HTTP(S) yang dicatat ke log.
trace string Wajib Nama resource trace yang terkait dengan entri log, jika ada. Jika berisi nama resource relatif, nama dianggap relatif terhadap https://tracing.googleapis.com. Contoh: projects/PROJECT_ID/traces/06796866738c859f2f19b7cfb3214824.

Load Balancer Aplikasi Internal tidak mendukung kolom ini.

spanId string Wajib ID span dalam trace yang dikaitkan dengan entri log. Untuk Rentang aktivitas, string ini memiliki format yang sama dengan yang digunakan Trace API v2: encoding heksadesimal 16 karakter dari array 8 byte, seperti 000000000000004a.

Load Balancer Aplikasi Internal tidak mendukung kolom ini.

resource Objek MonitoredResource Wajib

Resource yang dipantau yang menghasilkan entri log ini.

Objek MonitoredResourceDescriptor mendeskripsikan skema objek MonitoredResource menggunakan nama jenis dan serangkaian label.

Misalnya, deskriptor resource yang dipantau untuk Load Balancer Aplikasi internal memiliki jenis resource internal_http_lb_rule dan menggunakan label resource untuk mengidentifikasi resource sebenarnya dan atributnya. Untuk mengetahui daftar label resource, lihat Label resource untuk resource.type="internal_http_lb_rule".

jsonPayload object (format Struct) Wajib Payload entri log yang dinyatakan sebagai objek JSON. Objek JSON berisi kolom berikut:
  • tls
  • proxyStatus
  • backendTargetProjectNumber
  • serviceDirectoryService
  • cloudFitExperiment
  • cloudFitFault
  • serviceExtensionInfo
  • mtls
  • authzPolicyInfo
  • backendNetworkName
  • orca_load_report
string Wajib

Kolom proxyStatus berisi string yang menentukan alasan Load Balancer Aplikasi internal menampilkan HttpRequest.status. Kolom ini hanya diisi saat proxy menampilkan kode error.

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

Kolom proxyStatus memiliki dua bagian:

string Wajib Kolom backendTargetProjectNumber berisi nomor project yang mengidentifikasi pemilik layanan backend atau bucket backend.
string Wajib Kolom serviceDirectoryService berisi nama layanan Service Directory tempat kesalahan Cloud FIT dikonfigurasi.
string Wajib Kolom cloudFitExperiment menyimpan nama eksperimen Cloud FIT.
string Wajib Kolom cloudFitFault menyimpan nama kesalahan yang disisipkan oleh eksperimen kesalahan Cloud FIT di jalur permintaan ini.
ServiceExtensionInfo Wajib Kolom serviceExtensionInfo menyimpan informasi tentang streaming gRPC dari load balancer ke Service Extensions. Untuk mengetahui informasi selengkapnya, lihat informasi yang di-log untuk ekstensi info.
AuthzPolicyInfo Wajib Kolom authzPolicyInfo berisi informasi tentang hasil kebijakan otorisasi. Informasi ini hanya tersedia untuk Load Balancer Aplikasi internal yang telah mengaktifkan kebijakan otorisasi. Untuk mengetahui informasi selengkapnya, lihat informasi yang di-log untuk kebijakan otorisasi.
TlsInfo Opsional

Kolom tls berisi kolom TlsInfo yang menentukan metadata TLS untuk koneksi antara klien dan load balancer. Kolom ini hanya tersedia jika klien menggunakan enkripsi TLS/SSL.

Gunakan parameter --logging-optional-fields untuk menentukan elemen yang harus di-log:

  • tls.protocol
  • tls.cipher

Anda tidak dapat menetapkan --logging-optional-fields ke tls untuk menentukan semua elemen.

MtlsInfo Opsional Kolom mtls berisi nilai MtlsInfo yang menentukan metadata mTLS untuk koneksi antara klien dan Application Load Balancer internal. Kolom ini hanya tersedia jika load balancer menggunakan TLS bersama (mTLS) frontend.
string Wajib Kolom backendNetworkName menentukan jaringan VPC backend, jika backend menggunakan VPC yang berbeda dengan aturan penerusan load balancer.
OrcaLoadReport Opsional

Kolom orca_load_report berisi beberapa atau semua elemen laporan beban ORCA yang ditampilkan oleh backend. Kolom ini hanya ada jika backend menampilkan laporan beban ORCA, dan Anda telah mengonfigurasi load balancer untuk me-log laporan beban ORCA.

Gunakan parameter --logging-optional-fields untuk menentukan mana dari elemen laporan beban ORCA berikut yang harus di-log:

  • orca_load_report.cpu_utilization
  • orca_load_report.mem_utilization
  • orca_load_report.request_cost
  • orca_load_report.utilization
  • orca_load_report.rps_fractional
  • orca_load_report.eps
  • orca_load_report.named_metrics
  • orca_load_report.application_utilization

Anda juga dapat menetapkan --logging-optional-fields ke orca_load_report untuk menentukan bahwa semua elemen harus di-log.

Format kolom TlsInfo

Kolom Format kolom Jenis kolom: Wajib atau Opsional Deskripsi
protocol string Opsional Protokol TLS yang digunakan klien untuk membuat koneksi dengan load balancer. Kemungkinan nilainya adalah TLS 1.0, 1.1, 1.2, 1.3, atau QUIC. Nilai ini ditetapkan ke NULL jika klien tidak menggunakan enkripsi TLS/SSL.
cipher string Opsional Cipher TLS yang digunakan klien untuk membuat koneksi dengan load balancer. Nilai ini ditetapkan ke NULL jika klien tidak menggunakan HTTP(S) atau klien tidak menggunakan enkripsi TLS/SSL.

Format kolom MtlsInfo

Kolom Format kolom Jenis kolom: Wajib atau Opsional Deskripsi
clientCertPresent bool Opsional

true jika klien telah memberikan sertifikat selama handshake TLS; jika tidak, false.

clientCertChainVerified bool Opsional

true jika rantai sertifikat klien diverifikasi berdasarkan TrustStore yang dikonfigurasi ; jika tidak, false.

clientCertError string Opsional

String standar yang merepresentasikan kondisi error. Untuk mengetahui informasi selengkapnya tentang string error, lihat Mode validasi klien.

clientCertSha256Fingerprint string Opsional

Sidik jari SHA-256 berenkode base64 dari sertifikat klien.

clientCertSerialNumber string Opsional

Nomor seri sertifikat klien. Jika nomor seri lebih panjang dari 50 byte, string client_cert_serial_number_exceeded_size_limit ditambahkan ke client_cert_error, dan nomor seri ditetapkan ke string kosong.

clientCertValidStartTime string Opsional

Stempel waktu (format string tanggal RFC 3339) sebelum sertifikat klien tidak valid. Contoh, 2022-07-01T18:05:09+00:00.

clientCertValidEndTime string Opsional

Stempel waktu (format string tanggal RFC 3339) setelah sertifikat klien tidak valid. Contoh, 2022-07-01T18:05:09+00:00.

clientCertSpiffeId string Opsional

ID SPIFFE dari kolom nama alternatif subjek (SAN). Jika nilai tidak valid atau melebihi 2.048 byte, SPIFFE ID akan disetel ke string kosong.

Jika SPIFFE ID lebih panjang dari 2048 byte, string client_cert_spiffe_id_exceeded_size_limit ditambahkan ke client_cert_error.

clientCertUriSans string Opsional

Daftar ekstensi SAN berenkode Base64 yang dipisahkan koma dan berjenis URI. Ekstensi SAN diekstrak dari sertifikat klien. SPIFFE ID tidak disertakan dalam kolom client_cert_uri_sans.

Jika kolom client_cert_uri_sans lebih panjang dari 512 byte, string client_cert_uri_sans_exceeded_size_limit ditambahkan ke client_cert_error, dan daftar yang dipisahkan koma ditetapkan ke string kosong.

clientCertDnsnameSans string Opsional

Daftar ekstensi SAN yang dienkode Base64 dan dipisahkan koma dengan jenis DNSName. Ekstensi SAN diekstrak dari sertifikat klien.

Jika kolom client_cert_dnsname_sans lebih panjang dari 512 byte, string client_cert_dnsname_sans_exceeded_size_limit ditambahkan ke client_cert_error, dan daftar yang dipisahkan koma ditetapkan ke string kosong.

clientCertIssuerDn string Opsional

Kolom Penerbit lengkap yang dienkode base64 dari sertifikat.

Jika kolom client_cert_issuer_dn lebih panjang dari 512 byte, string client_cert_issuer_dn_exceeded_size_limit ditambahkan ke client_cert_error, dan client_cert_issuer_dn disetel ke string kosong.

clientCertSubjectDn string Opsional

Kolom Subjek lengkap berenkode Base64 dari sertifikat.

Jika kolom client_cert_subject_dn lebih panjang dari 512 byte, string client_cert_subject_dn_exceeded_size_limit ditambahkan ke client_cert_error, dan client_cert_subject_dn disetel ke string kosong.

clientCertLeaf string Opsional

Sertifikat leaf klien untuk koneksi mTLS yang sudah dibuat dengan sertifikat yang lulus validasi. Encoding sertifikat sesuai dengan RFC 9440: sertifikat DER biner dienkode menggunakan Base64 (tanpa jeda baris, spasi, atau karakter lain di luar alfabet Base64) dan dibatasi dengan titik dua di kedua sisinya.

Jika client_cert_leaf melebihi 16 KB yang tidak dienkode, string client_cert_validated_leaf_exceeded_size_limit akan ditambahkan ke client_cert_error, dan client_cert_leaf akan disetel ke string kosong.

clientCertChain string Opsional

Daftar sertifikat yang dipisahkan koma, dalam urutan TLS standar, dari rantai sertifikat klien untuk koneksi mTLS yang sudah dibuat dan sertifikat kliennya lulus validasi, tidak termasuk sertifikat leaf. Encoding sertifikat sesuai dengan RFC 9440.

Jika ukuran gabungan client_cert_leaf dan client_cert_chain sebelum encoding Base64 melebihi 16 KB, string client_cert_validated_chain_exceeded_size_limit akan ditambahkan ke client_cert_error, dan client_cert_chain ditetapkan ke string kosong.

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 Aplikasi eksternal regional
  • Load Balancer Aplikasi internal lintas region
  • Load Balancer Aplikasi internal regional
Error proxyStatus Deskripsi Kode respons yang biasanya menyertai
destination_unavailable Load balancer menganggap backend tidak tersedia. Misalnya, upaya komunikasi dengan backend baru-baru ini gagal, atau pemeriksaan kondisi mungkin menghasilkan kegagalan. 500, 503
connection_timeout Upaya load balancer untuk membuka koneksi ke backend telah habis waktunya. 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 ke backend, dan batas tersebut telah terlampaui.

proxyStatus error ini ditampilkan selama salah satu skenario berikut:

  • Jika ada backend 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 bagi 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. Error ini dapat terjadi karena proxy yang mengelola koneksi dijadwalkan untuk dimulai ulang. 0, 500, 502
proxy_internal_response Load balancer membuat respons tanpa mencoba terhubung ke backend. Kode status apa pun, bergantung pada jenis masalahnya. Misalnya, kode status 410 berarti backend tidak tersedia karena keterlambatan pembayaran.
http_response_timeout Load balancer mencapai batas waktu tunggu layanan backend yang dikonfigurasi saat menunggu respons lengkap dari backend. 504, 408
http_request_error Load balancer mengalami error HTTP 4xx, yang menunjukkan adanya masalah pada permintaan klien. 400, 403, 405, 406, 408, 411, 413, 414, 415, 416, 417, atau 429
http_protocol_error Load balancer mengalami error protokol HTTP saat berkomunikasi dengan backend. 502
tls_protocol_error Load balancer mengalami error TLS selama handshake TLS. 0
tls_certificate_error Load balancer mengalami error saat memverifikasi sertifikat yang ditampilkan oleh server atau oleh klien saat mTLS diaktifkan. 0
tls_alert_received Load balancer mengalami error fatal TLS 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 Aplikasi eksternal regional
  • Load Balancer Aplikasi internal regional
  • Load Balancer Aplikasi internal lintas region
Detail proxyStatus Deskripsi Kode status respons yang biasanya menyertai
client_disconnected_before_any_response Koneksi ke klien terputus sebelum load balancer mengirimkan respons apa pun. 0
backend_connection_closed Backend menutup koneksinya ke load balancer secara tidak terduga. Hal ini dapat terjadi jika load balancer mengirim traffic ke entitas lain, seperti aplikasi pihak ketiga yang memiliki waktu tunggu TCP lebih singkat daripada waktu tunggu 10 menit (600 detik) load balancer. 502
failed_to_connect_to_backend Load balancer gagal terhubung ke backend. Kegagalan ini mencakup waktu tunggu habis selama fase koneksi. 503
failed_to_pick_backend Load balancer gagal memilih backend yang responsif untuk menangani permintaan. 502
response_sent_by_backend Permintaan HTTP berhasil di-proxy ke backend, dan respons ditampilkan oleh backend. Kode status HTTP ditetapkan oleh software yang berjalan di backend.
client_timed_out

Koneksi antara load balancer dan klien melampaui waktu tunggu tidak ada aktivitas.

Untuk mengetahui informasi selengkapnya tentang Load Balancer Aplikasi eksternal regional, lihat Waktu tunggu tetap aktif HTTP klien. Untuk mengetahui informasi selengkapnya tentang Load Balancer Aplikasi internal, lihat Waktu tunggu tetap aktif HTTP klien.
0, 408
backend_timeout

Backend kehabisan waktu saat membuat respons.

502
http_protocol_error_from_backend_response Respons backend berisi error protokol HTTP. 501, 502
http_protocol_error_from_request Permintaan klien berisi error protokol HTTP. 400, 503
http_version_not_supported Versi protokol HTTP tidak didukung. Hanya HTTP 1.1 dan 2.0 yang didukung. 400
handled_by_identity_aware_proxy Respons ini dihasilkan oleh Identity-Aware Proxy (IAP) selama memverifikasi identitas klien sebelum mengizinkan akses. 200, 302, 400, 401, 403, 500, 502
invalid_request_headers

Header permintaan HTTP yang diterima dari klien berisi minimal satu karakter yang tidak diizinkan berdasarkan spesifikasi HTTP yang berlaku.

Misalnya, nama kolom header yang menyertakan tanda petik ganda (") atau karakter apa pun di luar rentang ASCII standar (yaitu, byte apa pun >= 0x80) tidak valid.

Untuk informasi selengkapnya, lihat:

400, 404
ip_detection_failed Alamat IP asli tidak dapat dideteksi. Kode status apa pun mungkin ditampilkan, bergantung pada sifat kegagalannya. Nilai harus dari 400 hingga 599.
request_body_too_large Isi permintaan HTTP melebihi panjang maksimum yang didukung oleh load balancer. 413, 507
request_header_timeout Header permintaan kehabisan waktu karena load balancer tidak menerima permintaan lengkap dalam waktu 5 detik. 408, 504
denied_by_security_policy Load balancer menolak permintaan ini karena kebijakan keamanan Google Cloud Armor. 403
throttled_by_security_policy Permintaan diblokir oleh aturan throttle Cloud Armor. 429
client_cert_chain_invalid_eku Sertifikat klien atau penerbitnya tidak memiliki penggunaan kunci yang diperpanjang yang mencakup clientAuth. Untuk mengetahui informasi selengkapnya, lihat Error yang di-log untuk koneksi tertutup. 0
client_cert_chain_max_name_constraints_exceeded Intermediate certificate yang diberikan untuk validasi memiliki lebih dari 10 batasan nama. Untuk mengetahui informasi selengkapnya, lihat Error yang di-log untuk koneksi tertutup. 0
client_cert_invalid_rsa_key_size Sertifikat entitas akhir atau intermediate certificate klien memiliki ukuran kunci RSA yang tidak valid. Untuk mengetahui informasi selengkapnya, lihat Error yang di-log untuk koneksi tertutup. 0
client_cert_not_provided Klien tidak memberikan sertifikat yang diminta selama handshake. Untuk mengetahui informasi selengkapnya, lihat Error yang di-log untuk koneksi tertutup. 0
client_cert_pki_too_large IKP yang akan digunakan untuk validasi memiliki lebih dari tiga intermediate certificate dengan Subject dan Subject Public Key Info yang sama. Untuk mengetahui informasi selengkapnya, lihat Error yang di-log untuk koneksi tertutup. 0
client_cert_unsupported_elliptic_curve_key Sertifikat klien atau intermediate certificate menggunakan kurva elips yang tidak didukung. Untuk mengetahui informasi selengkapnya, lihat Error yang di-log untuk koneksi tertutup. 0
client_cert_unsupported_key_algorithm Sertifikat klien atau intermediate certificate menggunakan algoritma non-RSA atau non-ECDSA. Untuk mengetahui informasi selengkapnya, lihat Error yang di-log untuk koneksi tertutup. 0
client_cert_validation_failed Validasi sertifikat klien gagal dengan TrustConfig. Untuk mengetahui informasi selengkapnya, lihat Error yang di-log untuk koneksi tertutup. 0
client_cert_validation_not_performed Anda telah mengonfigurasi TLS bersama tanpa menyiapkan TrustConfig. Untuk mengetahui informasi selengkapnya, lihat Error yang di-log untuk koneksi tertutup. 0
client_cert_validation_search_limit_exceeded Batas kedalaman atau iterasi tercapai saat mencoba memvalidasi rantai sertifikat. Untuk mengetahui informasi selengkapnya, lihat Error yang di-log untuk koneksi tertutup. 0
client_cert_validation_timed_out Batas waktu terlampaui (200 md) saat memvalidasi rantai sertifikat. Untuk mengetahui informasi selengkapnya, lihat Error yang di-log untuk koneksi tertutup. 0
tls_version_not_supported Versi protokol TLS dikenali, tetapi tidak didukung. Error mengakibatkan koneksi TLS tertutup. 0
unknown_psk_identity Server mengirimkan error ini saat pembentukan kunci PSK diperlukan, tetapi klien tidak memberikan identitas PSK yang dapat diterima. Error ini mengakibatkan koneksi TLS ditutup. 0
no_application_protocol Dikirim oleh server saat ekstensi "application_layer_protocol_negotiation" klien hanya mengiklankan protokol yang tidak didukung oleh server. Lihat Ekstensi negosiasi protokol lapisan aplikasi TLS. Error ini menyebabkan koneksi TLS ditutup. 0
no_certificate Sertifikat tidak 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 ditutup. 0
certificate_revoked Sertifikat dicabut oleh penandatangannya. Error ini menyebabkan koneksi TLS ditutup. 0
certificate_expired Masa berlaku sertifikat telah berakhir atau sertifikat tidak valid. Error ini menyebabkan koneksi TLS ditutup. 0
certificate_unknown Beberapa masalah yang tidak ditentukan muncul saat memproses sertifikat, sehingga sertifikat tersebut tidak dapat diterima. Error ini menyebabkan koneksi TLS ditutup. 0
unknown_ca Rantai sertifikat yang valid atau rantai parsial diterima, tetapi sertifikat tidak dapat diterima karena sertifikat CA tidak dapat ditemukan atau dicocokkan dengan anchor tepercaya yang dikenal. 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 Menerima rekaman yang tidak dapat dilindungi. Error ini mengakibatkan koneksi TLS tertutup. 0
record_overflow Rekaman TLSCiphertext diterima dengan panjang lebih dari 214+256 byte, atau rekaman didekripsi menjadi rekaman TLSPlaintext dengan lebih dari 214 byte (atau batas lain yang dinegosiasikan). Error ini menyebabkan koneksi TLS ditutup. 0
handshake_failure Tidak dapat menegosiasikan serangkaian parameter keamanan yang dapat diterima mengingat 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 mengakibatkan koneksi TLS tertutup. 0
decrypt_error Operasi kriptografi handshake (bukan lapisan rekaman) gagal, termasuk tidak dapat memverifikasi tanda tangan atau memvalidasi pesan yang selesai dengan benar atau pengikat 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 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 yang dinegosiasikan lainnya. Error ini menyebabkan koneksi TLS ditutup. 0
unsupported_extension Dikirim oleh endpoint yang menerima pesan handshake apa pun 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 saat 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. 0

Entri log koneksi TLS yang gagal

Jika koneksi TLS antara klien dan load balancer gagal sebelum backend dipilih, entri log akan mencatat error. Anda dapat mengonfigurasi layanan backend dengan frekuensi sampling log yang berbeda. Jika koneksi TLS gagal, frekuensi pengambilan sampel log koneksi TLS yang gagal adalah frekuensi pengambilan sampel tertinggi untuk layanan backend mana pun. Misalnya, jika Anda telah mengonfigurasi dua layanan backend dengan frekuensi pengambilan sampel logging sebagai 0.3 dan 0.5, frekuensi pengambilan 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 resource.type="internal_http_lb_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.
url_map_name string Nama objek peta URL yang dikonfigurasi untuk memilih layanan backend.
forwarding_rule_name string Nama objek aturan penerusan.
target_proxy_name string Nama objek proxy target yang dirujuk oleh aturan penerusan.
matched_url_path_rule string Aturan jalur peta URL atau aturan rute yang dikonfigurasi sebagai bagian dari kunci peta URL. Dapat berupa UNMATCHED atau UNKNOWN sebagai fallback.
  • UNMATCHED mengacu pada permintaan yang tidak cocok dengan aturan jalur URL apa pun, sehingga menggunakan aturan jalur default.
  • UNKNOWN menunjukkan error internal.
backend_target_name string Nama backend yang dipilih untuk menangani permintaan, berdasarkan aturan jalur peta URL atau aturan rute yang cocok dengan permintaan.
backend_target_type string Jenis target backend (BACKEND_SERVICE / UNKNOWN).
backend_name string Nama grup instance atau NEG backend.
backend_type string

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

Cloud Logging mencatat permintaan saat backend_type adalah UNKNOWN meskipun logging dinonaktifkan. Misalnya, jika klien menutup koneksi ke load balancer sebelum load balancer dapat memilih backend, maka backend_type akan ditetapkan ke UNKNOWN dan permintaan dicatat. Log ini memberikan informasi pen-debug-an 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 UNKNOWN jika backend_name tidak diketahui.
backend_scope_type string Cakupan backend (REGION/ZONE). Mungkin UNKNOWN jika backend_name tidak diketahui.
backend_target_cross_project_id String Project ID layanan atau bucket target backend. Kolom ini hanya tersedia jika resource target backend dibuat di project yang berbeda dengan project tempat resource url_map dibuat.

Log permintaan kebijakan otorisasi

Objek authz_info dalam payload JSON Entri Log Load Balancer berisi informasi tentang kebijakan otorisasi. Anda dapat mengonfigurasi metrik berbasis log untuk traffic yang diizinkan atau ditolak oleh kebijakan ini. Periksa detail log kebijakan otorisasi lainnya.

Kolom Jenis Deskripsi
authz_info.policies[] objek Daftar kebijakan yang cocok dengan permintaan.
authz_info.policies[].name string Nama kebijakan otorisasi yang cocok dengan permintaan.

Nama kosong karena alasan berikut:

  • Tidak ada kebijakan ALLOW yang cocok dengan permintaan dan permintaan ditolak.
  • Tidak ada kebijakan DENY yang cocok dengan permintaan dan permintaan diizinkan.
authz_info.policies[].result enum Hasilnya dapat berupa ALLOWED atau DENIED.
authz_info.policies[].details string Detailnya mencakup:
  • allowed_as_no_deny_policies_matched_request
  • denied_as_no_allow_policies_matched_request
  • denied_by_authz_extension
  • denied_by_cloud_iap
authz_info.overall_result enum Hasilnya dapat berupa ALLOWED atau DENIED.

Melihat log untuk validasi sertifikat klien mTLS

Untuk melihat error yang di-log untuk koneksi tertutup selama validasi sertifikat klien mutual TLS, selesaikan langkah-langkah berikut.

Konsol

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

    Buka Logs Explorer

  2. Klik tombol Show query untuk mengaktifkan editor kueri.

  3. Tempel perintah berikut ke kolom Query. Ganti FORWARDING_RULE_NAME dengan nama aturan penerusan Anda.

    jsonPayload.statusDetails=~"client_cert"
    jsonPayload.@type="type.googleapis.com/google.cloud.loadbalancing.type.LoadBalancerLogEntry"
    resource.labels.forwarding_rule_name=FORWARDING_RULE_NAME
    
  4. Klik Run query.

Pemantauan

Load Balancer Aplikasi Internal mengekspor data pemantauan ke Monitoring.

Metrik pemantauan dapat digunakan untuk tujuan berikut:

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

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

Melihat metrik Cloud Monitoring

Konsol

Untuk melihat metrik untuk resource yang dimonitor menggunakan Metrics Explorer, lakukan langkah berikut:

  1. Di konsol Google Cloud , buka halaman  Metrics explorer:

    Buka Metrics explorer

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Monitoring.

  2. Di toolbar konsol Google Cloud , pilih project Google Cloud Anda. Untuk konfigurasi Hub Aplikasi, pilih project host Hub Aplikasi atau project pengelolaan folder yang mendukung aplikasi.
  3. Pada elemen Metrik, luaskan menu Pilih metrik, masukkan Internal Application Load Balancer Rule di panel filter, lalu gunakan submenu untuk memilih jenis dan metrik resource tertentu:
    1. Di menu Active resources, pilih Internal Application Load Balancer Rule.
    2. Untuk memilih metrik, gunakan menu Kategori metrik aktif dan Metrik aktif.
    3. Klik Terapkan.
  4. Untuk menambahkan filter, yang menghapus deret waktu dari hasil kueri, gunakan elemen Filter.

  5. Untuk menggabungkan deret waktu, gunakan menu pada elemen Agregasi. Misalnya, untuk menampilkan pemakaian CPU bagi VM Anda, berdasarkan zonanya, tetapkan menu pertama ke Rataan dan menu kedua ke zona.

    Semua deret waktu ditampilkan saat menu pertama elemen Agregasi ditetapkan ke Unaggregated. Setelan default untuk elemen Agregasi ditentukan oleh jenis metrik yang Anda pilih.

  6. Untuk kuota dan metrik lain yang melaporkan satu sampel per hari, lakukan tindakan berikut:
    1. Di panel Display, tetapkan Jenis widget ke Diagram batang bertumpuk.
    2. Tetapkan jangka waktu setidaknya satu minggu.

Menentukan kebijakan pemberitahuan

Konsol

Anda dapat membuat kebijakan pemberitahuan untuk memantau nilai metrik dan memberi tahu Anda saat metrik tersebut melanggar ketentuan.

  1. Di konsol Google Cloud , buka halaman  Pemberitahuan:

    Buka Pemberitahuan

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Monitoring.

  2. Jika Anda belum membuat saluran notifikasi dan ingin menerima notifikasi, klik Edit Saluran Notifikasi dan tambahkan saluran notifikasi Anda. Kembali ke halaman Pemberitahuan setelah menambahkan saluran.
  3. Dari halaman Pemberitahuan, pilih Buat kebijakan.
  4. Untuk memilih metrik, luaskan menu Pilih metrik, lalu lakukan tindakan berikut:
    1. Untuk membatasi menu pada entri yang relevan, masukkan Internal Application Load Balancer Rule ke kolom filter. Jika tidak ada hasil setelah memfilter menu, nonaktifkan tombol Hanya tampilkan resource & metrik aktif.
    2. Untuk Resource type, pilih Internal Application Load Balancer Rule.
    3. Pilih Kategori metrik dan Metrik, lalu pilih Terapkan.
  5. Klik Berikutnya.
  6. Setelan di halaman Konfigurasi pemicu notifikasi menentukan kapan notifikasi dipicu. Pilih jenis kondisi dan, jika perlu, tentukan batasnya. Untuk mengetahui informasi selengkapnya, lihat Membuat kebijakan pemberitahuan batas metrik.
  7. Klik Berikutnya.
  8. Opsional: Untuk menambahkan notifikasi ke kebijakan pemberitahuan, klik Saluran notifikasi. Di dialog ini, pilih satu atau beberapa saluran notifikasi dari menu, lalu klik Oke.
  9. Opsional: Perbarui Durasi penutupan otomatis insiden. Kolom ini menentukan kapan Monitoring akan menutup insiden jika data metrik tidak ada.
  10. Opsional: Klik Dokumentasi, lalu tambahkan informasi apa pun yang ingin Anda sertakan dalam pesan notifikasi.
  11. Klik Nama pemberitahuan dan masukkan nama untuk kebijakan pemberitahuan itu.
  12. Klik Buat Kebijakan.
Untuk mengetahui informasi selengkapnya, lihat Ringkasan pemberitahuan.

Menentukan dasbor kustom Monitoring

Konsol

Anda dapat membuat dasbor Monitoring kustom melalui metrik Load Balancer Aplikasi internal:

  1. Di Konsol Google Cloud , buka halaman Monitoring.

    Buka Monitoring

  2. Pilih Dasbor > Buat Dasbor.

  3. Klik Tambahkan Diagram.

  4. Beri judul pada diagram.

  5. Pilih metrik dan filter. Untuk metrik, jenis resource-nya adalah Load Balancer HTTP/S Internal.

  6. Klik Simpan.

Frekuensi dan retensi pelaporan metrik

Metrik untuk load balancer dikelompokkan dan diekspor ke Monitoring setiap satu menit. Data pemantauan disimpan selama enam minggu.

Secara default, dasbor memberikan analisis data untuk satu jam terakhir (1h). Anda dapat meminta analisis untuk interval waktu yang berbeda dengan memilih salah satu interval yang telah dikonfigurasi sebelumnya dari menu atau dengan memasukkan interval waktu yang Anda inginkan secara manual. Misalnya: 3h (selama 3 jam) atau 4d (selama 4 hari) atau 6w (selama enam minggu).

Metrik pemantauan

Metrik berikut untuk Load Balancer Aplikasi internal dilaporkan ke Monitoring.

Metrik FQDN Deskripsi
Tingkat yang dikonfigurasi backend (Pratinjau) network.googleapis.com/loadbalancer/backend/configured_rate Tingkat maksimum dalam permintaan per detik yang dikonfigurasi per grup backend. Ini adalah hasil penskalaan kapasitas target dengan penskala kapasitas, jika ditentukan.
Penggunaan yang dikonfigurasi backend (Pratinjau) network.googleapis.com/loadbalancer/backend/configured_utilization Kapasitas pemakaian CPU maksimum sebagai pecahan, yang dikonfigurasi per grup backend. Ini adalah hasil penskalaan kapasitas target dengan penskala kapasitas, jika ditentukan.
Tingkat error backend (Pratinjau) network.googleapis.com/loadbalancer/backend/error_rate Error yang disajikan oleh setiap grup backend per detik.
Tingkat kepenuhan backend (Pratinjau) network.googleapis.com/loadbalancer/backend/fullness Tingkat kepenuhan saat ini setiap grup backend sebagai persentase, berdasarkan mode penyeimbangan load balancer.
Latensi backend loadbalancing.googleapis.com/https/internal/backend_latencies

Distribusi latensi backend. Latensi backend adalah waktu dalam milidetik antara byte terakhir permintaan yang dikirim ke backend dan byte terakhir respons yang diterima oleh proxy. RTT backend mencakup waktu yang diperlukan oleh backend untuk memproses permintaan dan waktu yang diperlukan agar respons dikirim kembali ke proxy.

Metrik kustom load balancing backend (Pratinjau) network.googleapis.com/loadbalancer/backend/lb_custom_metric Penggunaan saat ini oleh setiap grup backend, berdasarkan metrik kustom yang Anda tentukan.
Rasio backend (Pratinjau) network.googleapis.com/loadbalancer/backend/rate Permintaan yang diterima oleh setiap grup backend per detik.
Penggunaan backend (Pratinjau) network.googleapis.com/loadbalancer/backend/utilization Penggunaan CPU agregat VM dalam grup sebagai pecahan.
Latensi backend loadbalancing.googleapis.com/https/internal/backend_latencies

Distribusi latensi backend. Latensi backend adalah waktu dalam milidetik antara byte terakhir permintaan yang dikirim ke backend dan byte terakhir respons yang diterima oleh proxy. RTT backend mencakup waktu yang diperlukan oleh backend untuk memproses permintaan dan waktu yang diperlukan agar respons dikirim kembali ke proxy.

Permintaan dalam proses yang dikonfigurasi (Pratinjau) network.googleapis.com/loadbalancer/backend/configured_in_flight_requests Permintaan dalam proses maksimum untuk setiap grup backend. Permintaan dalam proses menentukan cara penyebaran beban untuk permintaan yang berjalan selama beberapa detik.
Permintaan dalam penerbangan (Pratinjau) network.googleapis.com/loadbalancer/backend/in_flight_requests Jumlah kueri yang sedang diproses oleh setiap grup backend.
Jumlah permintaan loadbalancing.googleapis.com/https/internal/request_count Jumlah permintaan yang disajikan oleh Load Balancer Aplikasi internal.
Jumlah byte permintaan loadbalancing.googleapis.com/https/internal/request_bytes Jumlah byte yang dikirim sebagai permintaan dari klien ke Load Balancer Aplikasi internal.
Jumlah byte respons loadbalancing.googleapis.com/https/internal/response_bytes Jumlah byte yang dikirim sebagai respons dari load balancer HTTP(S) internal ke klien.
Total latensi loadbalancing.googleapis.com/https/internal/total_latencies

Distribusi total latensi. Total latensi adalah waktu dalam milidetik antara byte pertama permintaan yang diterima oleh proxy dan byte terakhir respons yang dikirim oleh proxy. Total latensi mencakup: waktu yang dibutuhkan proxy untuk memproses permintaan, waktu yang dibutuhkan agar permintaan dikirim dari proxy ke backend, waktu yang dibutuhkan backend untuk memproses permintaan, waktu yang dibutuhkan agar respons dikirim kembali ke proxy, dan waktu yang dibutuhkan proxy untuk memproses respons dan mengirim respons ke klien.

Total latensi tidak mencakup RTT antara klien dan proxy. Selain itu, jeda antar-permintaan pada koneksi yang sama yang menggunakan Connection: keep-alive tidak memengaruhi pengukuran. Pengukuran ini biasanya dibatasi hingga persentil ke-95 dalam tampilan Cloud Monitoring.

Memfilter dimensi untuk metrik

Metrik digabungkan untuk setiap Load Balancer Aplikasi internal. Anda dapat memfilter metrik gabungan menurut dimensi berikut.

Properti Deskripsi
BACKEND_SCOPE Google Cloud Zona atau region grup backend yang melayani permintaan klien, atau string khusus untuk kasus saat grup backend tidak ditetapkan. Contoh: us-central1-a, europe-west1-b, asia-east1, UNKNOWN.
PROXY_REGION Region Load Balancer Aplikasi internal, klien, dan backend. Contoh: us-central1, europe-west1, atau asia-east1.
BACKEND Nama grup instance atau NEG backend yang melayani permintaan klien.
BACKEND_TARGET Nama layanan backend yang melayani permintaan klien.
MATCHED_URL_RULE Aturan jalur peta URL atau aturan rute yang cocok dengan awalan permintaan HTTP(S) klien (hingga 50 karakter).

Metrik Response code class fraction didukung untuk seluruh load balancer. Tidak ada lagi perincian yang didukung.

Langkah berikutnya