Logging
Anda dapat mengaktifkan, menonaktifkan, dan melihat log untuk layanan backend Load Balancer Aplikasi eksternal. Untuk Load Balancer Aplikasi eksternal dengan bucket backend, logging otomatis diaktifkan dan tidak dapat dinonaktifkan.
Anda dapat mengaktifkan atau menonaktifkan logging untuk setiap layanan backend. Anda dapat mengonfigurasi apakah akan mencatat log semua permintaan atau fraksi yang diambil sampelnya secara acak.
Anda harus memastikan bahwa tidak ada pengecualian log yang berlaku untuk Load Balancer Aplikasi eksternal. Untuk petunjuk tentang cara memverifikasi bahwa log Cloud HTTP Load
Balancer
diizinkan, lihat Melihat pengecualian jenis
resource.
Mengaktifkan logging pada layanan backend baru
Konsol
Di konsol Google Cloud, buka halaman Load Balancing.
Klik nama load balancer Anda.
Klik
Edit.Klik Backend Configuration.
Pilih Create a backend service.
Lengkapi kolom layanan backend yang wajib diisi.
Di bagian Logging, centang kotak Enable logging.
Di kolom Frekuensi sampel, tetapkan probabilitas pengambilan sampel. Anda dapat menetapkan angka dari
0.0
hingga1.0
, dengan0.0
berarti tidak ada permintaan yang dicatat ke dalam log dan1.0
berarti 100% permintaan telah dicatat ke dalam log. Nilai default-nya adalah1.0
.Untuk menyelesaikan pengeditan layanan backend, klik Update.
Untuk menyelesaikan pengeditan load balancer, klik Update.
gcloud: Mode global
Buat layanan backend dan aktifkan logging menggunakan
perintah gcloud compute backend-services create
.
gcloud compute backend-services create BACKEND_SERVICE \ --global \ --enable-logging \ --logging-sample-rate=VALUE \ --load-balancing-scheme=EXTERNAL_MANAGED
dengan
--global
menunjukkan bahwa layanan backend bersifat global. Gunakan kolom ini untuk layanan backend yang digunakan dengan Load Balancer Aplikasi eksternal global.--enable-logging
mengaktifkan logging untuk layanan backend tersebut.--logging-sample-rate
memungkinkan Anda menentukan nilai dari0.0
hingga1.0
, dengan0.0
berarti tidak ada permintaan yang dicatat ke dalam log, dan1.0
berarti 100% permintaan telah dicatat ke dalam log. Hanya relevan dengan parameter--enable-logging
. Mengaktifkan logging tetapi menetapkan frekuensi sampling ke0.0
sama dengan menonaktifkan logging. Nilai default-nya adalah1.0
.
gcloud: Mode klasik
Buat layanan backend dan aktifkan logging menggunakan
perintah gcloud compute backend-services create
.
gcloud compute backend-services create BACKEND_SERVICE \ --global \ --enable-logging \ --logging-sample-rate=VALUE \ --load-balancing-scheme=EXTERNAL
dengan
--global
menunjukkan bahwa layanan backend bersifat global. Gunakan kolom ini untuk layanan backend yang digunakan dengan Load Balancer Aplikasi klasik.--enable-logging
mengaktifkan logging untuk layanan backend tersebut.--logging-sample-rate
memungkinkan Anda menentukan nilai dari0.0
hingga1.0
, dengan0.0
berarti tidak ada permintaan yang dicatat ke dalam log, dan1.0
berarti 100% permintaan telah dicatat ke dalam log. Hanya relevan dengan parameter--enable-logging
. Mengaktifkan logging tetapi menetapkan frekuensi sampling ke0.0
sama dengan menonaktifkan logging. Nilai default-nya adalah1.0
.
Mengaktifkan logging pada layanan backend yang ada
Konsol
Di konsol Google Cloud, buka halaman Load Balancing.
Klik nama load balancer Anda.
Klik
Edit.Klik Backend Configuration.
Klik
Edit di samping layanan backend.Di bagian Logging, centang kotak Enable logging.
Di kolom Frekuensi sampel, tetapkan probabilitas pengambilan sampel. Anda dapat menetapkan angka dari
0.0
hingga1.0
, dengan0.0
berarti tidak ada permintaan yang dicatat ke dalam log dan1.0
berarti 100% permintaan telah dicatat ke dalam log. Nilai default-nya adalah1.0
.Untuk menyelesaikan pengeditan layanan backend, klik Update.
Untuk menyelesaikan pengeditan load balancer, klik Update.
gcloud: Mode global
Aktifkan logging di layanan backend yang ada dengan
perintah gcloud compute backend-services update
.
gcloud compute backend-services update BACKEND_SERVICE \ --global \ --enable-logging \ --logging-sample-rate=VALUE
dengan
--global
menunjukkan bahwa layanan backend bersifat global. Gunakan kolom ini untuk layanan backend yang digunakan dengan Load Balancer Aplikasi eksternal global.--enable-logging
mengaktifkan logging untuk layanan backend tersebut.--logging-sample-rate
memungkinkan Anda menentukan nilai dari0.0
hingga1.0
, dengan0.0
berarti tidak ada permintaan yang dicatat ke dalam log, dan1.0
berarti 100% permintaan telah dicatat ke dalam log. Hanya relevan dengan parameter--enable-logging
. Mengaktifkan logging tetapi menetapkan frekuensi sampling ke0.0
sama dengan menonaktifkan logging. Nilai default-nya adalah1.0
.
gcloud: Mode klasik
Aktifkan logging di layanan backend yang ada dengan
perintah gcloud compute backend-services update
.
gcloud compute backend-services update BACKEND_SERVICE \ --global \ --enable-logging \ --logging-sample-rate=VALUE
dengan
--global
menunjukkan bahwa layanan backend bersifat global. Gunakan kolom ini untuk layanan backend yang digunakan dengan Load Balancer Aplikasi klasik.--enable-logging
mengaktifkan logging untuk layanan backend tersebut.--logging-sample-rate
memungkinkan Anda menentukan nilai dari0.0
hingga1.0
, dengan0.0
berarti tidak ada permintaan yang dicatat ke dalam log, dan1.0
berarti 100% permintaan telah dicatat ke dalam log. Hanya relevan dengan parameter--enable-logging
. Mengaktifkan logging tetapi menetapkan frekuensi sampling ke0.0
sama dengan menonaktifkan logging. Nilai default-nya adalah1.0
.
Menonaktifkan atau mengubah logging pada layanan backend yang ada
Konsol
Di konsol Google Cloud, buka halaman Load Balancing.
Klik nama load balancer Anda.
Klik
Edit.Klik Backend Configuration.
Klik
Edit di samping layanan backend.Untuk menonaktifkan logging sepenuhnya, di bagian Logging, hapus centang pada kotak Enable logging.
Jika logging tetap diaktifkan, Anda dapat menetapkan probabilitas pengambilan sampel yang berbeda di kolom Frekuensi sampel. Anda dapat menetapkan angka dari
0.0
hingga1.0
, dengan0.0
berarti tidak ada permintaan yang dicatat ke dalam log dan1.0
berarti 100% permintaan telah dicatat ke dalam log. Nilai defaultnya adalah1.0
. Untuk mengurangi jumlah log yang disimpan hingga 20%, setel nilai ke0.2
.Untuk menyelesaikan pengeditan layanan backend, klik Update.
Untuk menyelesaikan pengeditan load balancer, klik Update.
gcloud: Mode global
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
dengan
--global
menunjukkan bahwa layanan backend bersifat global. Gunakan kolom ini untuk layanan backend yang digunakan dengan Load Balancer Aplikasi eksternal global.--region
menunjukkan bahwa layanan backend bersifat regional. Gunakan kolom ini untuk layanan backend yang digunakan dengan Load Balancer Aplikasi eksternal regional.--no-enable-logging
menonaktifkan logging untuk layanan backend tersebut.
Mengubah frekuensi sampel logging
gcloud compute backend-services update BACKEND_SERVICE \ --global \ --logging-sample-rate=VALUE
gcloud: Mode klasik
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
dengan
--global
menunjukkan bahwa layanan backend bersifat global. Gunakan kolom ini untuk layanan backend yang digunakan dengan Load Balancer Aplikasi klasik.--no-enable-logging
menonaktifkan logging untuk layanan backend tersebut.
Mengubah frekuensi sampel logging
gcloud compute backend-services update BACKEND_SERVICE \ --global \ --logging-sample-rate=VALUE
dengan
--global
menunjukkan bahwa layanan backend bersifat global. Gunakan kolom ini untuk layanan backend yang digunakan dengan Load Balancer Aplikasi klasik.--logging-sample-rate
memungkinkan Anda menentukan nilai dari0.0
hingga1.0
, dengan0.0
berarti tidak ada permintaan yang dicatat ke dalam log, dan1.0
berarti 100% permintaan telah dicatat ke dalam log. Hanya relevan dengan parameter--enable-logging
. Mengaktifkan logging tetapi menetapkan frekuensi sampling ke0.0
sama dengan menonaktifkan logging.
Melihat log
Jika ingin mengikuti panduan langkah demi langkah untuk tugas ini langsung di Konsol Google Cloud, klik Pandu saya:
Log HTTP(S) diindeks terlebih dahulu oleh aturan penerusan, lalu peta URL.
Untuk melihat log, buka halaman Logs Explorer:
Untuk melihat semua log, di menu filter Resource, pilih Cloud HTTP Load Balancer > All forwarding rules.
Untuk melihat log untuk satu aturan penerusan, pilih satu nama aturan penerusan.
Guna melihat log untuk satu peta URL, pilih aturan penerusan, lalu pilih peta URL.
Kolom log jenis boolean biasanya hanya muncul jika memiliki nilai true
.
Jika kolom boolean memiliki nilai false
, kolom tersebut akan dihapus dari log.
Encoding UTF-8 diterapkan untuk kolom log. Karakter yang bukan karakter UTF-8
akan diganti dengan tanda tanya.
Untuk Load Balancer Aplikasi klasik dan Load Balancer Aplikasi eksternal global, Anda dapat mengekspor metrik berbasis log menggunakan log resource (resource.type="http_load_balancer"
). Metrik yang dibuat didasarkan pada resource "Aturan Load Balancer Aplikasi (Metrik Berbasis Log)" (l7_lb_rule
), yang tersedia di dasbor Cloud Monitoring, bukan di resource https_lb_rule
.
Apa itu log?
Entri log Load Balancer Aplikasi Eksternal berisi informasi yang berguna untuk memantau dan men-debug traffic HTTP(S) Anda. Kumpulan data log berisi kolom wajib diisi, yang merupakan kolom default untuk setiap kumpulan data log.
Kolom | Format kolom | Jenis kolom: Wajib atau Opsional | Deskripsi |
---|---|---|---|
keparahan insertID logName |
LogEntry | Diperlukan | Kolom umum seperti yang dijelaskan dalam entri log. |
stempel waktu | string (
|
Opsional | Waktu saat GFE lapisan pertama menerima permintaan. |
httpRequest | HttpRequest | Diperlukan | Protokol umum untuk mencatat permintaan HTTP.
|
resource | MonitoredResource | Diperlukan | MonitoredResource adalah jenis resource yang terkait dengan entri log. MonitoredResourceDescriptor
menjelaskan skema objek |
jsonPayload | objek (format Struct) | Diperlukan | Payload entri log yang dinyatakan sebagai objek JSON. Objek JSON berisi kolom berikut:
|
string | Diperlukan | Kolom statusDetails menyimpan string yang menjelaskan alasan load balancer menampilkan status HTTP seperti itu. Untuk mengetahui informasi selengkapnya tentang string log ini,
lihat statusDetail Pesan berhasil HTTP dan
Pesan kegagalan HTTP statusDetails. |
|
string | Diperlukan | Kolom backendTargetProjectNumber menyimpan nomor project tempat target backend—layanan backend atau bucket backend—telah dibuat. Kolom ini menggunakan format:
"projects/PROJECT_NUMBER" . Informasi ini hanya tersedia untuk Load Balancer Aplikasi eksternal global. |
Label resource
Tabel berikut mencantumkan label resource untuk
resource.type="http_load_balancer"
.
Kolom | Jenis | Deskripsi |
---|---|---|
backend_service_name |
string | Nama layanan backend. |
forwarding_rule_name |
string | Nama objek aturan penerusan. |
project_id |
string | ID project Google Cloud yang terkait dengan resource ini. |
target_proxy_name |
string | Nama objek proxy target yang dirujuk oleh aturan penerusan. |
url_map_name |
string | Nama objek peta URL yang dikonfigurasi untuk memilih layanan backend. |
zone |
string | Zona tempat load balancer dijalankan. Zonanya adalah global . |
pesan berhasil HTTP statusDetails
statusDetails (berhasil) | Arti | Kode respons umum yang menyertai |
---|---|---|
byte_range_caching
|
Permintaan HTTP disalurkan menggunakan cache rentang byte Cloud CDN. | Kode respons yang dapat di-cache apa pun dimungkinkan. |
response_from_cache
|
Permintaan HTTP disalurkan dari cache Cloud CDN. | Kode respons yang dapat di-cache apa pun dimungkinkan. |
response_from_cache_validated
|
Kode yang ditampilkan ditetapkan dari entri yang disimpan dalam cache Cloud CDN yang divalidasi oleh backend. | Kode respons yang dapat di-cache apa pun dimungkinkan. |
response_sent_by_backend
|
Permintaan HTTP berhasil di-proxy-kan ke backend, dan responsnya ditampilkan oleh backend. | Kode respons HTTP ditetapkan oleh software yang berjalan di backend. |
pesan kegagalan HTTP statusDetails
statusDetails (kegagalan) | Arti | Kode respons umum yang menyertai |
---|---|---|
aborted_request_due_to_backend_early_response
|
Permintaan dengan isi dibatalkan karena backend mengirimkan respons awal dengan kode error. Respons telah diteruskan ke klien. Permintaan dihentikan. | 4XX atau 5XX |
backend_connection_closed_after_partial_response_sent
|
Koneksi backend tiba-tiba ditutup setelah respons sebagian dikirim ke klien. | Kode respons HTTP ditetapkan oleh software yang berjalan di backend. Kode respons HTTP 0 (nol) berarti bahwa backend mengirim header HTTP yang tidak lengkap. |
backend_connection_closed_before_data_sent_to_client
|
Backend secara tiba-tiba menutup koneksinya ke load balancer sebelum respons di-proxy-kan ke klien. Hal ini dapat terjadi jika load balancer mengirimkan traffic ke entitas lain. Entity lainnya mungkin adalah load balancer pihak ketiga yang memiliki waktu tunggu TCP yang lebih singkat daripada waktu tunggu 10 menit (600 detik) Load Balancer Aplikasi eksternal. Load balancer pihak ketiga mungkin berjalan di instance VM. Menyetel waktu tunggu TCP (keepalive) secara manual pada layanan target ke lebih dari 600 detik dapat menyelesaikan masalah ini. | 502 |
backend_early_response_with_non_error_status
|
Backend mengirim respons non-error (1XX atau 2XX) ke permintaan sebelum menerima seluruh isi permintaan. | 502 |
backend_interim_response_not_supported
|
Backend mengirim respons 1XX sementara terhadap permintaan tersebut dalam konteks yang tidak mendukung respons sementara. | 502 |
backend_response_corrupted
|
Isi respons HTTP yang dikirim oleh backend memiliki potongan encoding transfer yang tidak valid atau rusak. | Kode respons apa pun mungkin tergantung pada sifat kerusakan. Sering kali 502. |
backend_response_headers_too_long
|
Header respons HTTP yang dikirim oleh backend melebihi batas yang diizinkan. Lihat bagian Ukuran header untuk Load Balancer Aplikasi eksternal untuk mengetahui informasi selengkapnya. | 502 |
backend_timeout
|
Waktu backend habis saat membuat respons. | 502 |
banned_by_security_policy
|
Permintaan diblokir oleh aturan pemblokiran berbasis tarif Google Cloud Armor. | 429 |
body_not_allowed
|
Klien mengirim permintaan HTTP dengan isi, tetapi metode HTTP yang digunakan tidak mengizinkan isi. | 400 |
byte_range_caching_aborted
|
Load balancer sebelumnya menerima respons yang menunjukkan bahwa resource dapat di-cache dan rentang byte didukung. Cloud CDN menerima respons yang tidak konsisten (misalnya, respons dengan kode respons selain Konten Parsial 206 yang diharapkan). Hal ini terjadi saat mencoba melakukan pengisian cache menggunakan permintaan rentang byte. Akibatnya, load balancer membatalkan respons ke klien. | 2XX |
byte_range_caching_forwarded_backend_response
|
Load balancer sebelumnya menerima respons yang menunjukkan bahwa resource dapat di-cache dan rentang byte didukung. Cloud CDN menerima respons yang tidak konsisten (misalnya, respons dengan kode respons selain Konten Parsial 206 yang diharapkan). Hal ini terjadi saat mencoba melakukan pengisian cache menggunakan permintaan rentang byte. Load balancer tersebut kemudian meneruskan respons yang tidak konsisten tersebut ke klien. | Ditampilkan dari backend—kode respons apa pun dapat dibuat. |
byte_range_caching_retrieval_abandoned
|
Klien membatalkan permintaan rentang byte atau permintaan validasi yang dimulai oleh Cloud CDN. | Ditampilkan dari backend—kode respons apa pun dapat dibuat. |
byte_range_caching_retrieval_from_backend_failed_after_partial_response
|
Permintaan rentang byte atau permintaan validasi yang dimulai oleh Cloud CDN mengalami error. Lihat entri log Cloud Logging yang sesuai untuk permintaan yang dimulai oleh Cloud CDN untuk mengetahui status backend mendetail. | 2XX |
cache_lookup_failed_after_partial_response
|
Load balancer gagal menampilkan respons penuh dari cache Cloud CDN karena terjadi error internal. | 2XX |
cache_lookup_timeout_after_partial_response
|
Waktu streaming pencarian cache Cloud CDN habis karena klien tidak mengambil konten secara tepat waktu. | 2XX |
client_disconnected_after_partial_response
|
Koneksi ke klien terputus setelah load balancer mengirim respons parsial. | Ditampilkan dari backend—kode respons apa pun dapat dibuat. |
client_disconnected_before_any_response
|
Koneksi ke klien terputus sebelum load balancer mengirim respons apa pun. | 0 |
client_timed_out
|
Google Front End (GFE) menghentikan koneksi klien karena kurangnya progres saat melakukan proxy permintaan atau respons. | 0 atau 408 |
client_cert_invalid_rsa_key_size
|
Ukuran kunci RSA atau leaf klien atau intermediate certificate tidak valid. Untuk informasi selengkapnya, lihat Error yang dicatat ke dalam log untuk koneksi tertutup. | 0 |
client_cert_unsupported_elliptic_curve_key
|
Klien atau sertifikat perantara menggunakan kurva eliptik yang tidak didukung. Untuk informasi lebih lanjut, lihat Error yang dicatat ke dalam log untuk koneksi tertutup. | 0 |
client_cert_unsupported_key_algorithm
|
Klien atau sertifikat perantara menggunakan algoritma non-RSA atau non-ECDSA. Untuk informasi lebih lanjut, lihat Error yang dicatat ke dalam log untuk koneksi tertutup. | 0 |
client_cert_pki_too_large
|
IKP yang akan digunakan untuk validasi memiliki lebih dari tiga intermediate certificate yang memiliki Info Kunci Publik Subjek dan Subjek yang sama. Untuk informasi lebih lanjut, lihat Error yang dicatat ke dalam log untuk koneksi tertutup. | 0 |
client_cert_chain_max_name_constraints_exceeded
|
Sertifikat perantara yang disediakan untuk validasi memiliki lebih dari sepuluh batasan nama. Untuk informasi lebih lanjut, lihat Error yang dicatat ke dalam log untuk koneksi tertutup. | 0 |
client_cert_chain_invalid_eku |
Sertifikat klien atau penerbitnya tidak memiliki
Extended Key Usage (EKU) yang menyertakan clientAuth . Untuk informasi lebih lanjut, lihat
Error yang dicatat ke dalam log untuk koneksi tertutup.
|
0 |
client_cert_validation_timed_out
|
Batas waktu terlampaui saat memvalidasi rantai sertifikat. Untuk informasi lebih lanjut, lihat Error yang dicatat ke dalam log untuk koneksi tertutup. | 0 |
client_cert_validation_search_limit_exceeded
|
Batas kedalaman atau iterasi tercapai saat mencoba memvalidasi rantai sertifikat. Untuk informasi lebih lanjut, lihat Error yang dicatat ke dalam log untuk koneksi tertutup. | 0 |
client_cert_validation_not_performed
|
Anda telah mengonfigurasi mTLS tanpa menyiapkan TrustConfig .
Untuk informasi lebih lanjut, lihat
Error yang dicatat ke dalam log untuk koneksi tertutup.
|
0 |
client_cert_not_provided
|
Klien tidak memberikan sertifikat yang diminta selama handshake. Untuk informasi lebih lanjut, lihat Error yang dicatat ke dalam log untuk koneksi tertutup. | 0 |
client_cert_validation_failed
|
Sertifikat klien gagal divalidasi dengan TrustConfig .
Untuk informasi lebih lanjut, lihat
Error yang dicatat ke dalam log untuk koneksi tertutup.
|
0 |
config_not_found
|
Load balancer tidak memiliki konfigurasi project. Hal ini mungkin terjadi sesekali, terutama setelah Anda membuat perubahan konfigurasi yang menambahkan resource baru. | 404 atau 503 |
direct_response
|
Load balancer mengganti permintaan ini dan menampilkan respons tetap. | Anda mungkin melihat kode respons HTTP bergantung pada sifat masalahnya. Misalnya, kode respons HTTP 410 berarti backend tidak tersedia karena adanya tunggakan pembayaran. |
denied_by_security_policy
|
Load balancer menolak permintaan ini karena kebijakan keamanan Google Cloud Armor. | Dikonfigurasi dalam kebijakan keamanan. |
error_uncompressing_gzipped_body
|
Terjadi error saat membuka kompresi respons HTTP dengan gzip. | 503 |
failed_to_connect_to_backend
|
Load balancer gagal terhubung ke backend. Hal ini termasuk waktu tunggu selama fase koneksi. | 503 untuk Load Balancer Aplikasi eksternal global 502 untuk Load Balancer Aplikasi klasik |
failed_to_pick_backend
|
Load balancer gagal memilih backend yang responsif untuk menangani permintaan. | 502 |
failed_to_negotiate_alpn
|
Load balancer dan backend gagal menegosiasikan protokol lapisan aplikasi (seperti HTTP/2) untuk digunakan guna berkomunikasi satu sama lain melalui TLS. | 502 |
headers_too_long
|
Header permintaan lebih besar dari batas maksimum yang diizinkan. | 413 |
http_version_not_supported
|
Versi HTTP tidak didukung. Saat ini, hanya HTTP 0.9, 1.0, 1.1, dan 2.0 yang didukung. | 400 |
internal_error
|
Terjadi error internal pada load balancer. Biasanya mewakili error sementara dalam infrastruktur load balancer. Coba lagi kueri Anda. | 4XX |
invalid_external_origin_endpoint
|
Konfigurasi untuk backend eksternal tidak valid. Tinjau konfigurasi NEG internet dan pastikan konfigurasi tersebut menentukan port dan alamat FQDN/IP yang valid. | 4XX |
invalid_request_headers
|
Header permintaan HTTP dari klien tidak valid. | 400 |
invalid_http2_client_header_format
|
Header HTTP/2 dari klien tidak valid. | 400 |
multiple_iap_policies
|
Beberapa kebijakan Identity-Aware Proxy (IAP) tidak dapat digabungkan. Jika Anda memiliki kebijakan IAP yang terpasang ke layanan backend dan kebijakan lain yang disertakan ke objek serverless, hapus salah satu kebijakan tersebut dan coba lagi. Objek serverless mencakup App Engine, Cloud Run, dan Cloud Functions. | 500 |
malformed_chunked_body
|
Isi permintaan tidak dienkode dengan benar dalam potongan. | 411 |
request_loop_detected
|
Load balancer mendeteksi loop permintaan. Loop ini mungkin disebabkan oleh kesalahan konfigurasi saat backend meneruskan permintaan kembali ke load balancer. | 502 |
required_body_but_no_content_length
|
Permintaan HTTP memerlukan isi, tetapi header permintaan tidak menyertakan panjang konten atau header potongan encoding transfer. | 400 atau 403 |
secure_url_rejected
|
Permintaan dengan URL https:// diterima melalui koneksi HTTP/1.1 teks biasa. | 400 |
ssl_san_verification_failed
|
Load balancer tidak dapat menemukan SAN (Nama Alternatif Subjek) dalam sertifikat SSL yang diberikan oleh backend yang cocok dengan nama host yang dikonfigurasi. | 502 |
ssl_certificate_chain_verification_failed
|
Sertifikat SSL yang ditampilkan oleh verifikasi sertifikat SSL yang gagal di backend. | 502 |
throttled_by_security_policy
|
Permintaan diblokir oleh aturan throttle Google Cloud Armor. | 429 |
unsupported_method
|
Klien memberikan metode permintaan HTTP yang tidak didukung. | 400 |
unsupported_100_continue
|
Permintaan klien menyertakan header 'Expect: 100-continue' pada protokol yang tidak mendukungnya. | 400 |
upgrade_header_rejected
|
Permintaan HTTP klien berisi header Upgrade dan ditolak. | 400 |
websocket_closed
|
Koneksi WebSocket ditutup. | 101 |
websocket_handshake_failed
|
Handshake WebSocket gagal. | Kode respons apa pun mungkin, bergantung pada sifat kegagalan handshake. |
request_body_too_large
|
Isi permintaan HTTP melebihi batas maksimum yang didukung oleh backend. Tidak berlaku untuk backend VM. | 413 |
handled_by_identity_aware_proxy
|
Respons ini dibuat oleh Identity-Aware Proxy selama verifikasi identitas klien sebelum mengizinkan akses. | 200, 302, 400, 401, 403, 500, 502 |
serverless_neg_routing_failed
|
Permintaan NEG serverless tidak dapat dikirim. Error ini dapat terjadi jika region yang ditentukan dalam NEG tidak dapat dijangkau, atau saat nama resource (misalnya, nama Cloud Functions) tidak dapat ditemukan. | 404.502 |
fault_filter_abort
|
Error ini dapat terjadi jika pelanggan telah mengonfigurasi filter kesalahan dan filter kesalahan dipicu untuk permintaan tertentu. | Nilainya harus dari 200 hingga 599. |
Lihat log untuk validasi sertifikat klien mTLS
Untuk melihat error yang dicatat ke dalam log untuk koneksi tertutup selama validasi sertifikat klien TLS bersama, selesaikan langkah-langkah berikut.
Kueri konsol
Di konsol Google Cloud, buka halaman Logs Explorer.
Klik tombol Tampilkan kueri.
Tempelkan perintah berikut ke dalam kolom kueri. 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
Klik Jalankan kueri.
Logging untuk bucket backend
Logging diaktifkan secara otomatis untuk load balancer dengan bucket backend. Anda tidak dapat mengubah atau menonaktifkan logging untuk bucket backend.
Logging untuk Google Cloud Armor
Tabel untuk pesan kegagalan HTTP statusDetail
berisi beberapa pesan yang berlaku untuk Google Cloud Armor. Untuk mengetahui informasi lebih lanjut tentang apa yang dicatat dalam log Google Cloud Armor, lihat Menggunakan logging permintaan.
Logging untuk deployment VPC Bersama
Log dan metrik Load Balancer Aplikasi biasanya diekspor ke project yang memiliki aturan penerusan. Oleh karena itu, admin layanan—pemilik atau pengguna project tempat layanan backend dibuat—tidak akan memiliki akses ke log dan metrik load balancer secara default. Anda dapat menggunakan peran IAM untuk memberikan izin ini kepada admin layanan. Untuk mempelajari lebih lanjut peran IAM yang tersedia, dan langkah-langkah untuk memberikan akses, lihat Memberikan akses ke Monitoring.
Berinteraksi dengan log
Anda dapat berinteraksi dengan log Load Balancer Aplikasi eksternal menggunakan Cloud Logging API. Logging API menyediakan cara untuk memfilter log secara interaktif yang memiliki kolom tertentu. Alat ini mengekspor log yang cocok ke Cloud Logging, Cloud Storage, BigQuery, atau Pub/Sub. Untuk informasi selengkapnya tentang Logging API, lihat Ringkasan Cloud Logging API.
Pemantauan
Load balancer mengekspor data pemantauan ke Cloud Monitoring.
Anda dapat menggunakan metrik pemantauan untuk melakukan hal berikut:
- Mengevaluasi konfigurasi, penggunaan, dan performa load balancer
- Memecahkan masalah
- Meningkatkan pemanfaatan resource dan pengalaman pengguna
Selain dasbor standar di Cloud Monitoring, Anda dapat membuat dasbor kustom, menyiapkan pemberitahuan, dan membuat kueri metrik melalui Cloud Monitoring API.
Melihat dasbor Cloud Monitoring standar
Cloud Monitoring menyediakan dasbor yang telah ditentukan untuk memantau load balancer Anda. Dasbor ini diisi secara otomatis oleh Cloud Monitoring.
Lakukan langkah-langkah berikut untuk mengakses dasbor standar:
Buka Monitoring di konsol Google Cloud.
Di panel navigasi Monitoring, klik Dasbor.
Di bagian Kategori, klik GCP.
Guna melihat daftar dasbor untuk semua load balancer Google Cloud, pilih dasbor bernama Load Balancer Google Cloud. Untuk melihat dasbor load balancer tertentu, cari load balancer dalam daftar, lalu klik namanya.
Untuk melihat dasbor yang telah ditentukan hanya untuk Load Balancer Aplikasi eksternal Anda, pilih dasbor bernama External HTTP(S) Load Balancer. Halaman ini menampilkan dasbor yang menunjukkan rasio respons 5XX dan latensi backend untuk semua Load Balancer Aplikasi eksternal di project Anda. Panduan ini juga menyediakan daftar dasbor untuk semua Load Balancer Aplikasi eksternal di project Anda.
Anda dapat mengklik setiap dasbor load balancer. Setiap dasbor menyertakan hal berikut:- Grafik yang terisi otomatis dan menampilkan perincian respons menurut class kode respons (5XX, 4XX, 3XX, 2XX)
- Total latensi
- Latensi backend
- RTT Frontend
- Jumlah permintaan
- Link ke log untuk load balancer
Untuk melihat dasbor layanan pihak ketiga, kembali ke halaman Dasbor. Di bagian Kategori, klik Lainnya.
- Untuk melihat dasbor layanan pihak ketiga tertentu, cari dasbor tersebut dalam daftar, lalu klik namanya.
Menetapkan kebijakan pemberitahuan
Jika ingin mengikuti panduan langkah demi langkah untuk tugas ini langsung di Konsol Google Cloud, klik Pandu saya:
Anda dapat membuat kebijakan pemberitahuan untuk memantau nilai metrik dan memberi tahu Anda saat metrik tersebut melanggar ketentuan.
-
Di panel navigasi konsol Google Cloud, pilih Monitoring, lalu pilih notifications Alerting:
- ika Anda belum membuat saluran notifikasi dan ingin menerima notifikasi, klik Edit Notification Channels dan tambahkan saluran notifikasi Anda. Kembali ke halaman Alerting setelah menambahkan saluran.
- Dari halaman Alerting, pilih Create policy.
- Untuk memilih metrik, luaskan menu Pilih metrik, lalu lakukan tindakan berikut:
- Untuk membatasi menu pada entri yang relevan, masukkan
Global External Application Load Balancer Rule
ke kolom filter. Jika tidak ada hasil setelah memfilter menu, nonaktifkan tombol Hanya tampilkan resource & metrik aktif. - Untuk Resource type, pilih Global External Application Load Balancer Rule.
- Pilih Kategori metrik dan Metrik, lalu pilih Terapkan.
- Untuk membatasi menu pada entri yang relevan, masukkan
- Klik Next.
- Setelan di halaman Konfigurasi pemicu notifikasi menentukan kapan notifikasi dipicu. Pilih jenis kondisi dan, jika perlu, tentukan batasnya. Untuk informasi selengkapnya, lihat Membuat kebijakan pemberitahuan batas metrik.
- Klik Next.
- Opsional: Untuk menambahkan notifikasi ke kebijakan pemberitahuan, klik Notification channels. Dalam dialog ini, pilih satu atau beberapa saluran notifikasi dari menu, lalu klik OK.
- Opsional: Perbarui Incident autoclose duration. Kolom ini menentukan kapan Monitoring akan menutup insiden jika data metrik tidak ada.
- Opsional: Klik Documentation, lalu tambahkan informasi apa pun yang ingin Anda sertakan dalam pesan notifikasi.
- Klik Alert name dan masukkan nama untuk kebijakan pemberitahuan itu.
- Klik Create Policy.
Menentukan dasbor kustom Cloud Monitoring
Anda dapat membuat dasbor Cloud Monitoring kustom untuk metrik load balancer:
Di konsol Google Cloud, buka halaman Monitoring.
Pilih Dasbor > Buat Dasbor.
Klik Add Chart, lalu beri judul pada diagram.
Untuk mengidentifikasi deret waktu yang akan ditampilkan, pilih jenis resource dan jenis metrik:
- Di bagian Resource & Metric, klik diagram, lalu di bagian Select a metric, pilih dari opsi yang tersedia:
- Untuk Load Balancer Aplikasi eksternal global, pilih jenis resource Global External Application Load Balancer Rule.
- Klik Terapkan.
- Di bagian Resource & Metric, klik diagram, lalu di bagian Select a metric, pilih dari opsi yang tersedia:
Untuk menentukan filter pemantauan, klik Filter > Tambahkan filter.
Klik Save.
Frekuensi dan retensi pelaporan metrik
Metrik untuk Load Balancer Aplikasi eksternal diekspor ke Cloud Monitoring dalam batch perincian 1 menit. Data pemantauan 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 1 jam (satu jam), 6 jam (enam jam), 1 hari (satu hari), 1 W (satu minggu), dan 6 W (enam minggu). Anda dapat meminta analisis secara manual dalam interval apa pun mulai dari 6 W hingga 1 menit.
Metrik pemantauan
Anda dapat memantau metrik berikut untuk Load Balancer Aplikasi eksternal.
Metrik untuk Load Balancer Aplikasi eksternal global berikut dilaporkan ke Cloud Monitoring.
Metrik ini diawali dengan loadbalancing.googleapis.com/
.
Metrik | Nama | Deskripsi |
---|---|---|
Jumlah permintaan | https/request_count |
Jumlah permintaan yang dilayani oleh Load Balancer Aplikasi eksternal |
Jumlah byte permintaan | https/request_bytes_count |
Jumlah byte yang dikirim sebagai permintaan dari klien ke Load Balancer Aplikasi eksternal |
Jumlah byte respons | https/response_bytes_count |
Jumlah byte yang dikirim sebagai respons dari Load Balancer Aplikasi eksternal ke klien |
Total latensi | https/total_latencies |
Distribusi latensi. Latensi adalah waktu antara byte pertama permintaan diterima hingga byte terakhir respons yang dikirim oleh GFE. Total latensi diukur berdasarkan permintaan/respons. Jeda di antara permintaan
pada koneksi sama yang menggunakan Contoh: Load balancer memiliki 1 permintaan per detik dari Inggris Raya, semuanya dengan latensi 100 md, dan 9 permintaan per detik dari Amerika Serikat, semuanya dengan latensi 50 md. Selama satu menit tertentu, ada 60 permintaan dari Inggris Raya dan 540 permintaan dari AS. Metrik pemantauan mempertahankan distribusi ke semua dimensi. Anda dapat meminta informasi seperti berikut:
|
RTT frontend* | https/frontend_tcp_rtt |
Distribusi waktu round trip (RTT) yang dihaluskan yang diukur untuk setiap koneksi antara klien dan GFE (diukur dengan stack TCP GFE). Smoothed RTT adalah algoritma yang menangani variasi dan anomali yang mungkin terjadi dalam pengukuran RTT. |
Latensi backend* | https/backend_latencies |
Distribusi latensi yang diukur dari saat byte permintaan pertama dikirim oleh GFE ke backend, hingga GFE menerima byte respons terakhir dari backend. Untuk koneksi WebSocket, latensi backend berlaku untuk seluruh durasi sesi WebSocket. |
Fraksi class kode respons | Fraksi total respons Load Balancer Aplikasi eksternal yang berada di setiap class kode respons (2XX, 4XX, ...). Di Cloud Monitoring, nilai ini hanya tersedia di dasbor default. Tidak tersedia untuk dasbor kustom. Anda dapat menggunakan API untuk menyetel pemberitahuannya. | |
Jumlah permintaan backend | https/backend_request_count |
Jumlah permintaan yang dikirim dari Load Balancer Aplikasi eksternal ke backend. |
Jumlah byte permintaan backend | https/backend_request_bytes_count |
Jumlah byte yang dikirim sebagai permintaan dari Load Balancer Aplikasi eksternal ke backend. |
Jumlah byte respons backend | https/backend_response_bytes_count |
Jumlah byte yang dikirim sebagai respons dari backend (termasuk cache) ke Load Balancer Aplikasi eksternal. |
Memfilter dimensi untuk metrik
Anda dapat menerapkan filter untuk metrik untuk Load Balancer Aplikasi eksternal.
Metrik akan digabungkan untuk setiap Load Balancer Aplikasi eksternal global. Anda dapat memfilter
metrik gabungan berdasarkan dimensi berikut untuk
resource.type="http_load_balancer"
.
Properti | Deskripsi |
---|---|
backend_scope | Cakupan Google Cloud (region atau zona) dari grup instance layanan backend yang menyalurkan koneksi. Jika tidak ada grup instance yang tersedia atau jika permintaan dilayani oleh entity lain, Anda akan melihat salah satu nilai berikut, bukan region atau zona grup instance layanan backend.
Jika pengelompokan ini dipilih, diagram akan menampilkan metrik backend (load balancer-ke-backend), bukan metrik frontend (client-to-load balancer). |
backend_scope = "backend_zone" | Jika grup instance adalah grup instance zona, zona Google Cloud dari grup instance yang melayani permintaan klien. (Contoh:
us-central1-a , europe-west1-b ,
asia-east1-c )Saat pengelompokan ini dipilih, diagram akan menampilkan metrik backend (load balancer-ke-backend), bukan metrik frontend (client-to-load balancer). |
backend_scope = "backend_region" | Jika grup instance adalah grup instance regional, region Google Cloud dari grup instance yang melayani permintaan klien. (Contoh:
us-central1 , europe-west1 ,
asia-east1 )Saat pengelompokan ini dipilih, diagram akan menampilkan metrik backend (load balancer-ke-backend), bukan metrik frontend (client-to-load balancer). |
proxy_continent | Benua HTTP(S) GFE yang menghentikan koneksi HTTP(S).
(Contoh: America , Europe , Asia ) |
backend_type = "INSTANCE GROUP" | Nama grup instance yang melayani permintaan klien. Jika tidak ada grup instance yang tersedia atau jika permintaan dilayani oleh entity lain, Anda akan melihat salah satu nilai berikut, bukan grup instance.
Jika pengelompokan ini dipilih, diagram akan menampilkan metrik backend (load balancer-ke-backend), bukan metrik frontend (client-to-load balancer). |
backend_target_type = "KEMBALIEND_SERVICE" | Nama layanan backend yang melayani permintaan. |
matched_url_path_rule | Aturan jalur peta URL yang cocok dengan awalan permintaan HTTP(S) (maksimal 50 karakter). |
forwarding_rule_name | Nama aturan penerusan yang digunakan oleh klien untuk mengirim permintaan. |
Langkah selanjutnya
- Baca ringkasan logging Cloud CDN
- Baca tentang cache.
- Baca tentang URL bertanda tangan dan cookie yang ditandatangani.