本頁面說明如何為 Proxy 網路負載平衡器設定及使用 Cloud Logging 和 Cloud Monitoring。
監控資源
下表列出負載平衡器的資源名稱。
區域性外部 Proxy 網路負載平衡器 區域性內部 Proxy 網路負載平衡器 跨區域內部 Proxy 網路負載平衡器 全域外部 Proxy 網路負載平衡器 |
傳統版 Proxy 網路負載平衡器 | |
---|---|---|
記錄受監控的資源類型 | 「Proxy 網路負載平衡器規則」l4_proxy_rule |
「全域外部 Proxy 網路負載平衡器規則」tcp_ssl_proxy_rule |
監控受監控的資源類型 | 「Proxy 網路負載平衡器規則」l4_proxy_rule |
「全域外部 Proxy 網路負載平衡器規則」tcp_ssl_proxy_rule |
Proxy 網路負載平衡器的記錄功能
記錄提供實用資訊,有助於排解負載平衡器問題及監控負載平衡器。系統會匯總每項連線的記錄,讓您瞭解每項連線如何路由至服務後端。
使用記錄不會產生額外費用。不過,系統會根據您匯入記錄檔的方式,套用 Cloud Logging 標準價格、BigQuery 或 Pub/Sub 價格。此外,啟用記錄檔不會影響負載平衡器的效能。
記錄取樣和收集
系統會對進出負載平衡器後端虛擬機器 (VM) 執行個體的連線進行取樣。接著系統會處理這些取樣連線,產生記錄。您可以根據 logConfig.sampleRate 參數,控制要以記錄檔項目形式發出的連線比例。如果 logConfig.sampleRate
為 1.0
(100%),表示系統會為所有連線產生記錄,並寫入 Cloud Logging。
啟用新後端服務的記錄功能
gcloud
使用 gcloud compute backend-services create
指令。
區域性外部 Proxy 網路負載平衡器和區域性內部 Proxy 網路負載平衡器:
gcloud compute backend-services create BACKEND_SERVICE \ --region=REGION \ --enable-logging \ --logging-sample-rate=SAMPLE_RATE
如果是全域外部 Proxy 網路負載平衡器、傳統版 Proxy 網路負載平衡器或跨區域內部 Proxy 網路負載平衡器:
gcloud compute backend-services create BACKEND_SERVICE \ --global \ --enable-logging \ --logging-sample-rate=SAMPLE_RATE
更改下列內容:
BACKEND_SERVICE
:後端服務的名稱。REGION
:要建立的後端服務區域。SAMPLE_RATE
:只有在為這個後端服務啟用記錄功能時,才能指定這個欄位。
這個欄位的值必須介於
0.0 to 1.0
,其中0.0
表示不會回報任何記錄,而1.0
表示會記錄所有連線。啟用記錄功能但將取樣率設為0.0
,等同於停用記錄功能。預設值為1.0
。
API
對
regionBackendServices.insert
方法發出 POST
要求:
區域性內部 Proxy 網路負載平衡器:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "INTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
區域性外部 Proxy 網路負載平衡器:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
全域外部 Proxy 網路負載平衡器:
對
backendServices.insert
方法發出 POST
要求:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
傳統版 Proxy 網路負載平衡器:
對
backendServices.insert
方法發出 POST
要求:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
跨區域內部 Proxy 網路負載平衡器:
對
backendServices.insert
方法發出 POST
要求:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "INTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
更改下列內容:
BACKEND_SERVICE
:後端服務的名稱。SAMPLE_RATE
:只有在為這個後端服務啟用記錄功能時,才能指定這個欄位。
這個欄位的值必須介於
0.0 to 1.0
,其中0.0
表示不會回報任何記錄,而1.0
表示會記錄所有連線。啟用記錄功能但將取樣率設為0.0
,等同於停用記錄功能。預設值為1.0
。
啟用現有後端服務的記錄功能
gcloud
使用 gcloud
compute backend-services update
指令。
區域性外部 Proxy 網路負載平衡器和區域性內部 Proxy 網路負載平衡器:
gcloud compute backend-services update BACKEND_SERVICE \ --region=REGION \ --enable-logging \ --logging-sample-rate=SAMPLE_RATE
如果是全域外部 Proxy 網路負載平衡器、傳統版 Proxy 網路負載平衡器或跨區域內部 Proxy 網路負載平衡器:
gcloud compute backend-services update BACKEND_SERVICE \ --global \ --enable-logging \ --logging-sample-rate=SAMPLE_RATE
更改下列內容:
BACKEND_SERVICE
:後端服務的名稱。REGION
:要建立的後端服務區域。SAMPLE_RATE
:只有在為這個後端服務啟用記錄功能時,才能指定這個欄位。
這個欄位的值必須介於
0.0 to 1.0
,其中0.0
表示不會回報任何記錄,而1.0
表示會記錄所有連線。啟用記錄功能但將取樣率設為0.0
,等同於停用記錄功能。預設值為1.0
。
API
對 regionBackendServices/patch
方法發出 PATCH
要求:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/backendServices/BACKEND_SERVICE
區域性內部 Proxy 網路負載平衡器:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "INTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
區域性外部 Proxy 網路負載平衡器:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
全域外部 Proxy 網路負載平衡器:
對 backendServices/patch
方法發出 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 } }
傳統版 Proxy 網路負載平衡器:
對 backendServices/patch
方法發出 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 } }
跨區域內部 Proxy 網路負載平衡器:
對 backendServices/patch
方法發出 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 } }
更改下列內容:
PROJECT_ID
:專案名稱。BACKEND_SERVICE
:後端服務的名稱。SAMPLE_RATE
:只有在為這個後端服務啟用記錄功能時,才能指定這個欄位。
欄位的值必須介於
0.0 to 1.0
,其中0.0
表示不會回報任何記錄,而1.0
表示會記錄所有連線。啟用記錄功能但將取樣率設為0.0
,等同於停用記錄功能。預設值為1.0
。
停用現有後端服務的記錄功能
gcloud
使用 gcloud compute backend-services update
指令。
區域性外部 Proxy 網路負載平衡器和區域性內部 Proxy 網路負載平衡器:
gcloud compute backend-services update BACKEND_SERVICE \ --region=REGION \ --no-enable-logging
如果是全域外部 Proxy 網路負載平衡器、傳統版 Proxy 網路負載平衡器或跨區域內部 Proxy 網路負載平衡器:
gcloud compute backend-services update BACKEND_SERVICE \ --global \ --no-enable-logging
更改下列內容:
BACKEND_SERVICE
:後端服務的名稱。REGION
:後端服務的區域。
API
區域性外部 Proxy 網路負載平衡器和區域性內部 Proxy 網路負載平衡器:
對 regionBackendServices/patch
方法發出 PATCH
要求:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/backendServices/BACKEND_SERVICE { "logConfig": { "enable": false } }
如果是全域外部 Proxy 網路負載平衡器、傳統版 Proxy 網路負載平衡器或跨區域內部 Proxy 網路負載平衡器:
對 backendServices/patch
方法發出 PATCH
要求:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE { "logConfig": { "enable": false } }
更改下列內容:
PROJECT_ID
:專案名稱。REGION
:後端服務的區域。BACKEND_SERVICE
:後端服務的名稱。
查看記錄
記錄檔擷取至 Cloud Logging 後,如果未透過記錄檔路由器接收器排除,您可以使用 Cloud Logging API 和 Google Cloud CLI 讀取記錄檔。
如要查看所有記錄,請完成下列步驟。
主控台
前往 Google Cloud 控制台的「Logs Explorer」頁面。
選取「Proxy Network Load Balancer Rule」資源類型。
選取「loadbalancing.googleapis.com/connections」記錄名稱。
控制台查詢
前往 Google Cloud 控制台的「Logs Explorer」頁面。
按一下「顯示查詢」切換按鈕。
將下列內容貼到查詢欄位。
resource.type="LOG_RESOURCE_TYPE" logName="projects/PROJECT_ID/logs/loadbalancing.googleapis.com/connections"
點選「執行查詢」
更改下列內容:
LOG_RESOURCE_TYPE
:記錄監控資源類型,設為l4_proxy_rule
或tcp_ssl_proxy_rule
。PROJECT_ID
:專案名稱。
查看特定後端服務的記錄
如要查看特定後端服務的記錄,請完成下列步驟。
控制台查詢
前往 Google Cloud 控制台的「Logs Explorer」頁面。
按一下「顯示查詢」切換按鈕。
將下列內容貼到查詢欄位。
resource.type="LOG_RESOURCE_TYPE" logName="projects/PROJECT_ID/logs/loadbalancing.googleapis.com/connections" resource.labels.backend_service_name="BACKEND_SERVICE_NAME"
點選「執行查詢」
更改下列內容:
LOG_RESOURCE_TYPE
:記錄監控資源類型,設為l4_proxy_rule
或tcp_ssl_proxy_rule
。PROJECT_ID
:專案名稱。BACKEND_SERVICE_NAME
:後端服務的名稱。
查看後端執行個體群組的記錄
如要查看特定後端執行個體群組的記錄,請完成下列步驟。
控制台查詢
前往 Google Cloud 控制台的「Logs Explorer」頁面。
按一下「顯示查詢」切換按鈕。
將下列內容貼到查詢欄位。
resource.type="LOG_RESOURCE_TYPE" logName="projects/PROJECT_ID/logs/loadbalancing.googleapis.com/connections" resource.labels.backend_group_name="BACKEND_GROUP_NAME"
點選「執行查詢」
更改下列內容:
LOG_RESOURCE_TYPE
:記錄監控資源類型,設為l4_proxy_rule
或tcp_ssl_proxy_rule
。PROJECT_ID
:專案名稱。BACKEND_GROUP_NAME
:執行個體群組的名稱。
記錄內容
記錄項目包含的資訊適合用於監控流量及進行偵錯。記錄包含必要欄位,也就是每個記錄的預設欄位。
欄位 | 欄位格式 | 欄位類型:必要或選填 | 說明 |
---|---|---|---|
嚴重程度 時間戳記 接收時間戳記 插入 ID 記錄名稱 |
LogEntry | 必填 | 記錄項目中說明的一般欄位。 |
resource | MonitoredResource | 必填 | MonitoredResource 是與記錄項目相關聯的資源類型。 MonitoredResourceDescriptor 會使用型別名稱和一組標籤,描述 |
jsonPayload | object (Struct 格式) | 必填 | 以 JSON 物件表示的記錄項目酬載。JSON 物件包含下列欄位:
|
記錄檔欄位
記錄項目包含必要欄位,也就是每個記錄項目的預設欄位。
某些記錄欄位會包含多項資料,這些記錄欄位採用多欄位格式。舉例來說,connection
欄位採用的格式是 IpConnection
,也就是一個欄位同時包含來源和目的地 IP 位址及通訊埠,外加通訊協定等資料。下表說明這些多欄位記錄欄位。
下表列出資源 l4_proxy_rule 的所有必要記錄欄位。
欄位 | 欄位格式 | 說明 |
---|---|---|
連結 | IpConnection | 描述這個連線的 5 元組。 |
startTime | 字串 | 採用 RFC 3339 日期字串格式的時間戳記,標記了負載平衡器接受用戶端連線的時間點。 |
endTime | 字串 | 用戶端或後端終止連線的時間戳記 (RFC 3339 日期字串格式)。 |
bytesSent | int64 | 從伺服器傳送至用戶端的位元組數。 |
bytesReceived | int64 | 伺服器從用戶端收到的位元組數。 |
IpConnection 欄位格式
欄位 | 類型 | 說明 |
---|---|---|
clientIp | 字串 | 用戶端 IP 位址 |
clientPort | int32 | 用戶端通訊埠。僅適用於 TCP 和 UDP 連線。 |
serverIp | 字串 | 伺服器 IP 位址 (轉送規則 IP) |
serverPort | int32 | 伺服器通訊埠。僅適用於 TCP 和 UDP 連線。 |
protocol | int32 | IANA 通訊協定號碼 |
proxyStatus 錯誤欄位
proxyStatus
欄位包含的字串會說明負載平衡器傳回錯誤的原因。「proxyStatus
」欄位包含兩個部分:「proxyStatus error
」和「proxyStatus details
」。本節說明 proxyStatus error
欄位支援的字串。
proxyStatus 錯誤欄位適用於下列負載平衡器:
- 全域外部 Proxy 網路負載平衡器
- 區域性外部 Proxy 網路負載平衡器
- 跨區域內部 Proxy 網路負載平衡器
- 區域性內部 Proxy 網路負載平衡器
proxyStatus 錯誤 | 說明 | 常見隨附回應代碼 |
---|---|---|
destination_unavailable
|
負載平衡器會將後端視為無法使用。舉例來說,最近嘗試與後端通訊時發生錯誤,或健康狀態檢查可能導致失敗。 | 500 、503
|
connection_timeout
|
負載平衡器嘗試開啟與後端的連線時逾時。 | 504
|
connection_terminated
|
負載平衡器與後端的連線在收到完整回應前終止。 在下列任一情況下,系統都會傳回此
|
0 、502 、503
|
connection_refused
|
負載平衡器連線至後端遭拒。 | 502 、503
|
connection_limit_reached
|
負載平衡器已設定連線數上限,且已超過該上限。 在下列任一情況下,系統都會傳回
|
502 、503
|
destination_not_found
|
負載平衡器無法判斷要使用哪個後端來處理這項要求。舉例來說,後端可能未設定。 | 500 、404
|
dns_error
|
負載平衡器嘗試尋找後端主機名稱的 IP 位址時,發生 DNS 錯誤。 | 502 、503
|
proxy_configuration_error
|
負載平衡器發生內部設定錯誤。 | 500
|
proxy_internal_error
|
負載平衡器發生內部錯誤。這個錯誤可能是因為管理連線的 Proxy 預定重新啟動所致。 | 0 、500 、502
|
proxy_internal_response
|
負載平衡器產生回應,但未嘗試連線至後端。 | 根據問題類型,可能出現任何狀態碼。舉例來說,410 狀態碼表示後端因付款逾期而無法使用。
|
tls_protocol_error
|
負載平衡器在 TLS 交握期間發生 TLS 錯誤。 | 0
|
tls_certificate_error
|
負載平衡器在驗證伺服器提供的憑證時發生錯誤。 | 0
|
tls_alert_received
|
負載平衡器在 TLS 握手期間遇到嚴重 TLS 警示。 | 0
|
proxyStatus 詳細資料欄位
proxyStatus
欄位包含的字串會說明負載平衡器傳回錯誤的原因。「proxyStatus
」欄位包含兩個部分:「proxyStatus error
」和「proxyStatus details
」。proxyStatus details
欄位為選填欄位,只有在有額外資訊時才會顯示。
本節說明 proxyStatus details
欄位支援的字串。
proxyStatus 詳細資料欄位適用於下列負載平衡器:
- 全域外部 Proxy 網路負載平衡器
- 區域性外部 Proxy 網路負載平衡器
- 區域性內部 Proxy 網路負載平衡器
- 跨區域內部 Proxy 網路負載平衡器
proxyStatus 詳細資料 | 說明 | 常見的隨附回應狀態碼 |
---|---|---|
client_disconnected_before_any_response
|
在負載平衡器傳送任何回應前,用戶端連線已中斷。 | 0 |
backend_connection_closed
|
後端意外關閉其負載平衡器連線。如果負載平衡器正在將流量傳送給其他實體 (例如第三方應用程式),而其 TCP 逾時比負載平衡器的 10 分鐘 (600 秒) 逾時短,就可能發生這種情況。 | 502
|
failed_to_connect_to_backend
|
負載平衡器無法連線至後端。這項失敗包括連線階段逾時。 | 503
|
failed_to_pick_backend
|
負載平衡器無法挑選健康狀態良好的後端來處理要求。 | 502
|
handled_by_identity_aware_proxy
|
這個回應是由 Identity-Aware Proxy (IAP) 產生,用於驗證用戶端身分,確認無誤後才允許存取。 | 200 、302 、400 、401 、403 、500 、502
|
request_overall_timeout
|
已超過要求逾時總時間。詳情請參閱「已關閉連線的記錄錯誤」。 | 408 、503 、504
|
tls_version_not_supported
|
系統可辨識 TLS 通訊協定版本,但無法支援。這個錯誤會導致 TLS 連線關閉。 | 0
|
unknown_psk_identity
|
如果伺服器要求建立 PSK 金鑰,但用戶端未提供可接受的 PSK 身分識別,就會傳送這項錯誤。這個錯誤會導致 TLS 連線關閉。 | 0
|
no_application_protocol
|
伺服器會在用戶端「application_layer_protocol_negotiation」擴充功能只宣傳伺服器不支援的通訊協定時傳送。請參閱「TLS 應用程式層通訊協定交涉擴充功能」。 這個錯誤會導致 TLS 連線關閉。 | 0
|
no_certificate
|
找不到任何憑證。這個錯誤會導致 TLS 連線關閉。 | 0
|
bad_certificate
|
憑證無效,或含有無法驗證的簽名。這個錯誤會導致 TLS 連線關閉。 | 0
|
unsupported_certificate
|
憑證類型不受支援。這個錯誤會導致 TLS 連線關閉。 | 0
|
certificate_revoked
|
憑證已遭簽署者撤銷。這個錯誤會導致 TLS 連線關閉。 | 0
|
certificate_expired
|
憑證已過期或無效。這個錯誤會導致 TLS 連線關閉。 | 0
|
certificate_unknown
|
處理憑證時發生不明問題,導致憑證無法使用。這個錯誤會導致 TLS 連線關閉。 | 0
|
unknown_ca
|
系統收到有效憑證鏈結或部分鏈結,但由於找不到 CA 憑證或無法與已知信任錨點比對,因此無法接受該憑證。這個錯誤會導致 TLS 連線關閉。 | 0
|
unexpected_message
|
不當訊息,例如錯誤的信號交換訊息或過早收到應用程式資料。這個錯誤會導致 TLS 連線關閉。 | 0
|
bad_record_mac
|
收到無法解除保護的記錄。這個錯誤會導致 TLS 連線關閉。 | 0
|
record_overflow
|
收到的 TLSCiphertext 記錄長度超過 214+256 個位元組,或解密後的記錄長度超過 214 個位元組 (或其他協商的限制)。TLSPlaintext 這個錯誤會導致 TLS 連線關閉。
|
0
|
handshake_failure
|
無法根據可用選項,協商出一組可接受的安全參數。這個錯誤會導致 TLS 連線關閉。 | 0
|
illegal_parameter
|
交握中的某個欄位有誤,或與其他欄位不一致。 這個錯誤會導致 TLS 連線關閉。 | 0
|
access_denied
|
系統已收到有效憑證或 PSK,但套用存取權控管後,用戶端未繼續進行交涉。這個錯誤會導致 TLS 連線關閉。 | 0
|
decode_error
|
由於部分欄位超出指定範圍,或訊息長度有誤,因此無法解碼。這個錯誤會導致 TLS 連線關閉。 | 0
|
decrypt_error
|
交握 (非記錄層) 加密作業失敗,包括無法正確驗證簽章、驗證完成的訊息或 PSK 繫結。這個錯誤會導致 TLS 連線關閉。 | 0
|
insufficient_security
|
伺服器要求的參數比用戶端支援的參數更安全,因此交涉失敗。這個錯誤會導致 TLS 連線關閉。 | 0
|
inappropriate_fallback
|
伺服器傳送此訊息,是為了回應用戶端無效的連線重試嘗試。這個錯誤會導致 TLS 連線關閉。 | 0
|
user_cancelled
|
使用者因與通訊協定失敗無關的原因取消握手。這個錯誤會導致 TLS 連線關閉。 | 0
|
missing_extension
|
由接收握手訊息的端點傳送,該訊息不含必須為提供的 TLS 版本或其他協商參數傳送的擴充功能。這個錯誤會導致 TLS 連線關閉。 | 0
|
unsupported_extension
|
由端點傳送,這些端點收到任何含有擴充功能的握手訊息,而該擴充功能已知禁止納入指定的握手訊息,或在 ServerHello 或 Certificate 中包含任何未先在相應 ClientHello 或 CertificateRequest 中提供的擴充功能。
這個錯誤會導致 TLS 連線關閉。
|
0
|
unrecognized_name
|
當伺服器無法透過用戶端透過「server_name」擴充功能提供的名稱識別時,伺服器會傳送這項警示。請參閱 TLS 擴充功能定義。 | 0
|
bad_certificate_status_response
|
當伺服器透過「status_request」擴充功能提供無效或無法接受的 OCSP 回應時,用戶端會傳送這項警示。請參閱 TLS 擴充功能定義。 這個錯誤會導致 TLS 連線關閉。 | 0
|
load_balancer_configured_resource_limits_reached
|
負載平衡器已達到設定的資源限制,例如連線數量上限。 | 0
|
傳輸層安全標準 (TLS) 連線失敗記錄項目
如果用戶端與負載平衡器之間的 TLS 連線在選取任何後端之前失敗,記錄項目會記錄錯誤。您可以設定後端服務,使用不同的記錄取樣率。如果傳輸層安全標準 (TLS) 連線失敗,失敗的 TLS 連線記錄取樣率會是任何後端服務的最高取樣率。舉例來說,如果您已將兩個後端服務的記錄取樣率分別設為 0.3
和 0.5
,則失敗的 TLS 連線記錄取樣率為 0.5
。
您可以查看下列記錄項目詳細資料,找出失敗的 TLS 連線:
- proxyStatus 錯誤類型為
tls_alert_received
、tls_certificate_error
、tls_protocol_error
或connection_terminated
。 - 沒有後端資訊。
以下範例顯示含有 proxyStatus error
欄位的 TLS 失敗記錄項目:
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"
資源標籤
下表列出資源類型 l4_proxy_rule
的資源標籤。
欄位 | 類型 | 說明 |
---|---|---|
network_name | 字串 | 負載平衡器的 VPC 網路名稱。 |
project_id | 字串 | 與這項資源相關聯的 Google Cloud 專案 ID。 |
region | 字串 | 定義負載平衡器的區域。 |
target_proxy_name | 字串 | 轉送規則所參照的目標 Proxy 物件名稱。 |
forwarding_rule_name | 字串 | 轉送規則物件的名稱。 |
loadbalancing_scheme_name | 字串 | 負載平衡器轉送規則和後端服務的屬性,用於指明負載平衡器可否處理內部或外部流量。 |
backend_target_name | 字串 | 選擇用於處理要求的後端名稱。 |
backend_target_type | 字串 | 後端目標類型 (BACKEND_SERVICE / UNKNOWN) 。 |
backend_name | 字串 | 後端執行個體群組或網路端點群組 (NEG) 的名稱。 |
backend_type | 字串 | 後端類型,可以是執行個體群組、NEG 或不明。 即使停用記錄功能,當 backend_type 為 |
backend_scope | 字串 | 後端的範圍,可以是區域名稱或地區名稱。當 backend_name 不明時,可能為 UNKNOWN 。 |
backend_scope_type | 字串 | 後端的範圍 (REGION/ZONE )。
如果 backend_name 不明,可能為 UNKNOWN 。 |
監控
Proxy 網路負載平衡器會將監控資料匯出到 Cloud Monitoring。
監控指標可用於以下目的:
- 評估負載平衡器的設定、用量和效能。
- 排解問題。
- 改善資源利用率和使用者體驗。
除了 Monitoring 中預先定義的資訊主頁,您可透過 Cloud Monitoring API 建立自訂資訊主頁、設定快訊及查詢指標。
查看 Monitoring 資訊主頁
前往 Google Cloud 控制台的「Monitoring」頁面。
如果導覽窗格中顯示「資源」,請選取「資源」,然後選取「Google Cloud 負載平衡器」。否則,請選取「資訊主頁」,然後選取名為「Google Cloud 負載平衡器」的資訊主頁。
點選負載平衡器的名稱。
左側窗格會列出該負載平衡器的各種詳細資訊,右側窗格則會顯示時間序列圖。如要查看特定細目,請按一下「細目」。
指標回報頻率與保留期
負載平衡器的指標會批次匯出至 Monitoring,每分鐘一次。監控資料會保留六週。
根據預設,資訊主頁會提供過去一小時的資料分析 (1h
)。
如要要求分析其他時間間隔的資料,請從選單選取預先設定的時間間隔,
或手動輸入所需的時間間隔。例如:3h
(3 小時)、4d
(4 天) 或 6w
(六週)。
傳統版 Proxy 網路負載平衡器的指標
系統會將下列傳統版 Proxy 網路負載平衡器指標回報給 Monitoring。
指標 | 名稱 | 說明 |
---|---|---|
傳入流量 | tcp_ssl_proxy/ingress_bytes_count |
透過 Google Front End (GFE) 從外部端點傳送至已設定後端的位元組數 (以每秒傳送的位元組數為單位)。 |
傳出流量 | tcp_ssl_proxy/egress_bytes_count |
透過 GFE 從設定的後端傳送至外部端點的位元組數 (以每秒傳送的位元組數為單位)。 |
公開連線數量 | tcp_ssl_proxy/open_connections |
在指定取樣時間點開啟的連線數。取樣間隔為一分鐘。 |
每秒新增連線數 | tcp_ssl_proxy/new_connections |
已建立的連接數 (用戶端成功連線到後端)。計算精細程度為每分鐘,但圖表會調整為顯示每秒的值。詳情請參閱 Monitoring 說明文件。 |
每秒關閉的連線數 | tcp_ssl_proxy/closed_connections |
已關閉的連線數。計算精細程度為每分鐘,但圖表會調整為顯示每秒的值。詳情請參閱 Monitoring 說明文件。 |
前端 RTT | tcp_ssl_proxy/frontend_tcp_rtt |
針對用戶端和 GFE 之間的每個連線,測量之順暢封包往返時間 (RTT) 的分佈情況 (每次應用程式層位元組從 GFE 傳送至用戶端時,藉由 GFE 的 TCP 堆疊來測量)。平滑 RTT 演算法可處理 RTT 測量中可能發生的變化和異常狀況。 |
其他負載平衡器的指標
系統會將區域性內部 Proxy 網路負載平衡器、區域性外部 Proxy 網路負載平衡器、跨區域內部 Proxy 網路負載平衡器,以及全域外部 Proxy 網路負載平衡器的下列指標,回報至 Monitoring。
指標 | 名稱 | 說明 |
---|---|---|
傳入流量 | l4_proxy/ingress_bytes_count |
用戶端透過 Proxy 傳送至後端 VM 的位元組數。取樣頻率為每 60 秒一次。取樣完畢後,會有多達 210 秒無法查看資料。 |
傳出流量 | l4_proxy/egress_bytes_count |
後端 VM 透過 Proxy 傳送至用戶端的位元組數。取樣頻率為每 60 秒一次。取樣完畢後,會有多達 210 秒無法查看資料。 |
每秒關閉的連線數 | l4_proxy/tcp/closed_connections_count |
使用 TCP RST 或 TCP FIN 訊息終止的連線數。取樣頻率為每 60 秒一次。取樣完畢後,會有多達 210 秒無法查看資料。 |
指標的篩選維度
系統會針對每個負載平衡器匯總指標。指標可以按以下維度進一步細分。
屬性 | 說明 |
---|---|
BACKEND SCOPE | 提供連線之執行個體群組的範圍 (地區或區域)。 |
BACKEND ZONE | 如果執行個體群組是區域執行個體群組,則為提供連線之執行個體群組的區域。 |
BACKEND REGION | 如果執行個體群組是地區執行個體群組,則為提供連線之執行個體群組的地區。 |
PROXY CONTINENT | 終止使用者 TCP/SSL 連線的 GFE 所在洲別,例如 America 、Europe 、Asia 。 |
INSTANCE GROUP | 接收使用者連線的執行個體群組名稱。 |
FORWARDING RULE | 用於連線至 GFE 的轉送規則名稱。 |
CLIENT COUNTRY | 使用者所在國家/地區的名稱。 |
後續步驟
- 如要瞭解 SSL 政策的運作方式,請參閱 SSL 政策總覽。
- 如要瞭解外部 Proxy 網路負載平衡器的運作方式,請參閱「外部 Proxy 網路負載平衡器總覽」。
- 如要瞭解內部 Proxy 網路負載平衡器的運作方式,請參閱「內部 Proxy 網路負載平衡器總覽」。