關於虛擬私有雲流量記錄
本頁面說明虛擬私有雲流量記錄的記錄格式,包括可用的基本和中繼資料欄位。此外,本文也會說明如何使用記錄篩選功能,只產生符合特定條件的記錄。
記錄格式
記錄包含做為每個記錄核心欄位的幾個基礎欄位,以及用來新增其他資訊的中繼資料欄位。您可能會省略中繼資料欄位,以節省儲存費用。
某些記錄欄位採用多欄位格式,也就是指定欄位會包含多項資料。舉例來說,connection 欄位採用 IpConnection 格式,其中包含來源和目的地 IP 位址和通訊埠,以及通訊協定,全部都在單一欄位中。記錄格式表下方說明這些多欄位格式的欄位。
中繼資料欄位的值並非根據資料層路徑,而是近似值,可能遺漏或不正確。與中繼資料欄位不同,基本欄位的值是直接從封包標頭取得。
| 欄位 | 欄位格式 | 欄位類型:基本或選填中繼資料 |
|---|---|---|
| 連結 |
IpConnection
說明流量的連線詳細資料,包括 5 元組和網路位址轉譯 IP 位址 (如適用) |
基本 |
| reporter |
string
回報流量的一端:
|
基本 |
| connection_direction |
string
TCP 連線相對於報告者的方向。 如果啟用 TCP 連線記錄,且在匯總間隔期間觀察到傳出 可以是下列任一值:
|
基本 |
| round_trip_time |
延遲時間
在匯總時間間隔內測得的 RTT (以毫秒為單位,精確度為毫秒以下)。系統會為 TCP (適用於 VM 和無伺服器端點) 和 Falcon 流量填入這個欄位:
未填入:
|
基本 |
| rtt_msec |
int64
在匯總間隔期間測得的封包往返時間 (RTT),以毫秒為單位。這個欄位的填寫方式如下:
測得的 RTT 是指從傳送 SEQ 到收到對應 ACK 之間經過的時間。 |
基本 |
| bytes_sent |
int64
從來源傳送至目的地的預估使用者酬載位元組數。1 如果封包沒有使用者酬載,則值為零。2 如果流量遭到捨棄 ( disposition=DROPPED),或 TCP 連線記錄記錄了沒有樣本資料封包的連線事件,則不會填入這個欄位。
|
基本 |
| packets_sent |
int64
從來源傳送至目的地的預估封包數量。1如果流量遭到捨棄 ( disposition=DROPPED),或 TCP 連線記錄記錄了沒有樣本資料封包的連線事件,則不會填入這個欄位。
|
基本 |
| start_time |
string
採用 RFC 3339 日期字串格式的時間戳記,標記了在匯總時間間隔內發現第一個封包的時間點。 |
基本 |
| end_time |
string
採用 RFC 3339 日期字串格式的時間戳記,標記了在匯總時間間隔內發現最後一個封包的時間點。 |
基本 |
| disposition |
string
僅在記錄擷取到封包捨棄時,才會填入這個欄位。這個欄位會設為 DROPPED。 |
基本 |
| drop_reason |
string
僅在記錄含有 disposition=DROPPED 時,才會填入字串。
詳情請參閱「封包捨棄註解」和「封包捨棄原因」。 |
基本 |
| bytes_dropped |
int64
從來源傳送至目的地時,遭捨棄的使用者酬載位元組預估數量。僅在記錄含有 disposition=DROPPED 時,才會填入字串。 |
基本 |
| packets_dropped |
int64
從來源到目的地捨棄的封包預估數量。僅在記錄含有 disposition=DROPPED 時,才會填入字串。 |
基本 |
| throughput_inclusion |
string
僅在記錄含有 disposition=DROPPED 時,才會填入字串。
指出捨棄的流量是否計入 (INCLUDED) 或排除 (EXCLUDED) 於同一回報者為流量回報的 bytes_sent 和 packets_sent 欄位。 |
基本 |
| 來源和目的地中繼資料欄位 | ||
| src_gateway |
GatewayDetails
如果流量來源是地端部署或其他雲端端點,且透過閘道 (例如 Cloud Interconnect 的 VLAN 連結或 Cloud VPN 通道) 連線至 Cloud de Confiance by S3NS ,並符合下列任一條件,這個欄位就會填入閘道詳細資料:
|
中繼資料 |
| dest_gateway |
GatewayDetails
如果流量目的地是透過閘道 (例如 Cloud Interconnect 的 VLAN 連結或 Cloud VPN 通道) 連線至 Cloud de Confiance 的地端部署或其他雲端端點,且符合下列任一條件,這個欄位就會填入閘道詳細資料:
|
中繼資料 |
| src_gke_details |
GkeDetails
如果流量來源是 Google Kubernetes Engine (GKE) 端點,這個欄位會填入 GKE 端點詳細資料。 |
中繼資料 |
| dest_gke_details |
GkeDetails
如果流量的目的地是 GKE 端點,這個欄位會填入 GKE 端點詳細資料。 |
中繼資料 |
| src_google_service |
GoogleServiceDetails
如果流量來源是 Google 服務,這個欄位會填入服務詳細資料。 |
中繼資料 |
| dest_google_service |
GoogleServiceDetails
如果流量目的地是 Google 服務,這個欄位會填入服務詳細資料。 |
中繼資料 |
| src_instance |
InstanceDetails
如果流量來源是虛擬私有雲網路中的 VM,且符合下列任一條件,這個欄位會填入 VM 執行個體詳細資料:
|
中繼資料 |
| dest_instance |
InstanceDetails
如果流量的目的地是位於虛擬私有雲網路中的 VM,且符合下列任一條件,系統就會在這個欄位填入 VM 執行個體詳細資料。
|
中繼資料 |
| src_location |
GeographicDetails
如果流量來源是虛擬私有雲網路以外的公開 IP 位址,這個欄位會填入可用的地點中繼資料。 |
中繼資料 |
| dest_location |
GeographicDetails
如果流量的目的地是虛擬私有雲網路以外的公開 IP 位址,這個欄位會填入可用的地點中繼資料。 |
中繼資料 |
| src_serverless_details |
ServerlessDetails
如果流量來源是無伺服器端點,例如設定了直接虛擬私有雲輸出的 Cloud Run 或 App Engine 資源,系統就會在這個欄位填入無伺服器中繼資料。 |
中繼資料 |
| dest_serverless_details |
ServerlessDetails
如果流量的目的地是無伺服器端點,例如設有直連虛擬私有雲輸出的 Cloud Run 或 App Engine 資源,這個欄位就會填入無伺服器中繼資料。 |
中繼資料 |
| src_psc_interface |
PrivateServiceConnectInterfaceDetails
如果流量來源是 Private Service Connect 介面,這個欄位會填入 Private Service Connect 介面詳細資料,並由來源和目的地在用戶專案中回報。 |
中繼資料 |
| dest_psc_interface |
PrivateServiceConnectInterfaceDetails
如果流量的目的地是 Private Service Connect 介面,這個欄位會填入 Private Service Connect 介面詳細資料,並由來源和目的地在用戶專案中回報。 |
中繼資料 |
| src_vpc |
VpcDetails
如果流量來源是位於虛擬私有雲網路中的 VM 或無伺服器端點,且符合下列任一條件,這個欄位會填入虛擬私有雲網路的詳細資料:
|
中繼資料 |
| dest_vpc |
VpcDetails
如果流量的目的地是位於虛擬私有雲網路中的 VM 或無伺服器端點,且符合下列任一條件,這個欄位會填入虛擬私有雲網路的詳細資料:
|
中繼資料 |
| 其他中繼資料欄位 | ||
| internet_routing_details |
InternetRoutingDetails
如果流量是在 Cloud de Confiance 和網際網路之間,這個欄位會填入轉送詳細資料。僅適用於輸出流量。 |
中繼資料 |
| load_balancing |
LoadBalancingDetails
如果流量通過下列其中一種設定的負載平衡器,這個欄位會填入 Cloud Load Balancing 詳細資料:
|
中繼資料 |
| nat_gateway_details |
NatGatewayDetails
如果流量回報者是 Cloud NAT 閘道執行網路位址轉譯的子網路中的 SRC,這個欄位會填入 Cloud NAT 閘道詳細資料。
|
中繼資料 |
| network_service |
NetworkServiceDetails
如果設定了區分服務碼點 (DSCP) 標頭,這個欄位會填入網路服務詳細資料。 |
中繼資料 |
| psc |
PrivateServiceConnectDetails
如果流量與 Private Service Connect 連線相關聯 (包括透過 Network Connectivity Center 傳播的連線),且符合下列任一條件,這個欄位就會填入 Private Service Connect 詳細資料:
|
中繼資料 |
| rdma_traffic_type |
string
RDMA 流量類型。VM 之間的 GPU 對 GPU 流量。可以是 GPUDirect-TCPXO、Falcon 或 RoCE。 |
中繼資料 |
- 如果來源 VM 是回報者,回報的位元組值就是使用者酬載位元組和傳送的封包標頭位元組總和。即使封包不含使用者酬載,這個值也一律大於零。
- 如果目的地 VM 是回報者,回報的位元組值就是接收並轉送至應用程式層的使用者酬載位元組。如果封包沒有使用者酬載,位元組值為零。
GatewayDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| project_id | 字串 | 閘道的Cloud de Confiance 專案 ID |
| 位置 | 字串 | 閘道區域 |
| 名稱 | 字串 | 閘道名稱 |
| 類型 | 字串 |
閘道類型。可以是 INTERCONNECT_ATTACHMENT 或 VPN_TUNNEL。 |
| 虛擬私人雲端 | VpcDetails | 閘道的虛擬私有雲網路詳細資料 |
| interconnect_name | 字串 |
如果閘道類型為 INTERCONNECT_ATTACHMENT,這個欄位會填入已設定 VLAN 連結的 Cloud Interconnect 連線名稱。 |
| interconnect_project_number | int64 |
如果閘道類型為 INTERCONNECT_ATTACHMENT,這個欄位會填入已設定 VLAN 連結的 Cloud Interconnect 連線 Cloud de Confiance 專案編號。 |
GeographicDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| asn | int32 | 這個端點所屬外部網路的 ASN |
| 城市 | 字串 | 外部端點所在的城市 |
| continent | 字串 | 外部端點所在的洲別 |
| country | 字串 | 外部端點的國家/地區,以 ISO 3166-1 Alpha-3 國家/地區代碼表示 |
| 區域 | 字串 | 外部端點所在的地區 |
GkeDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| 叢集 | ClusterDetails | GKE 叢集中繼資料 |
| Pod | PodDetails | GKE Pod 中繼資料,在流量來源或目的地為 Pod 時填入 |
| 服務 | ServiceDetails |
GKE Service 中繼資料,僅填入 Service 端點。記錄最多包含兩項服務。如果相關服務超過兩項,這個欄位會包含單一服務,並加上特殊 MANY_SERVICES 標記。 |
ClusterDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| cluster_location | 字串 | 叢集的位置。視叢集為可用區或區域而定,這可以是可用區或區域。 |
| cluster_name | 字串 | GKE 叢集名稱。 |
PodDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| pod_name | 字串 | Pod 名稱 |
| pod_namespace | 字串 | Pod 的命名空間 |
| 工作負載 | WorkloadDetails | 控管 Pod 的頂層工作負載資源中繼資料 |
WorkloadDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| workload_name | 字串 | 頂層工作負載控制器的名稱 |
| workload_type | 字串 |
頂層工作負載控制器的類型。可能的值為 DEPLOYMENT、REPLICA_SET、STATEFUL_SET、DAEMON_SET、JOB、CRON_JOB 或 REPLICATION_CONTROLLER。 |
ServiceDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| service_name | 字串 |
服務名稱。如果相關服務超過兩項,這個欄位會設為特殊 MANY_SERVICES 標記。 |
| service_namespace | 字串 | 服務的命名空間 |
範例:
如果有兩項服務,「服務」欄位會如下所示:
service: [
0: {
service_name: "my-lb-service"
service_namespace: "default"
}
1: {
service_name: "my-lb-service2"
service_namespace: "default"
}
]
如果服務超過兩項,「服務」欄位會顯示如下:
service: [
0: {
service_name: "MANY_SERVICES"
}
]
GoogleServiceDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| 類型 | 字串 | 服務類型:
|
| service_name | 字串 | 服務名稱。例如: 限制:
|
| 連線能力 | 字串 | 存取方法。如果是
如果是
|
| private_domain | 字串 | 私人網域或 Private Service Connect API 套件。private_domain 欄位可以是下列其中一項:
|
InstanceDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| project_id | 字串 | VM 資源所屬 Cloud de Confiance 專案的 ID |
| 區域 | 字串 | VM 地區 |
| vm_name | 字串 | VM 的執行個體名稱 |
| 儲存區 | 字串 | VM 區域 |
| managed_instance_group | InstanceGroupDetails | 如果 VM 屬於代管執行個體群組,這個欄位會填入執行個體群組詳細資料。 |
InstanceGroupDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| 名稱 | 字串 | 執行個體群組名稱 |
| 區域 | 字串 | 如果執行個體群組為區域性,這個欄位會填入執行個體群組的區域。 |
| 儲存區 | 字串 | 如果執行個體群組位於單一可用區,這個欄位會填入執行個體群組的可用區。 |
InternetRoutingDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| egress_as_path | AsPath | 相關 AS 路徑清單。如果流量有多個可用的 AS 路徑,這個欄位可能會包含多個 AS 路徑。 |
AsPath 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| as_details | AsDetails | AS 路徑中所有系統的 AS 詳細資料清單。清單從 Cloud de Confiance網路外部的第一個 AS 開始,到遠端 IP 位址所屬的 AS 結束。 |
AsDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| asn | uint32 | AS 的自治系統編號 (ASN) |
IpConnection 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| src_ip | 字串 | 來源 IP 位址。所有流程都會填入這個值。 |
| dest_ip | 字串 | 目標 IP 位址。所有流程都會填入這個值。 |
| src_port | int32 | 來源通訊埠:
|
| dest_port | int32 | 目的地通訊埠:
|
| nat_ip | 字串 | Cloud NAT 閘道使用的 IP 位址 (如有設定)。只有在回報者為 SRC 時,系統才會填入資料。 |
| nat_port | int32 | Cloud NAT 閘道指派的通訊埠 (如有設定)。只有在回報者為 SRC 時,系統才會填入資料。 |
| 通訊協定 | int32 | IANA 通訊協定號碼:
|
延遲時間欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| median_msec | 雙精度值 | 匯總時間間隔內測得的中位數延遲時間 (以毫秒為單位)。 |
LoadBalancingDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| forwarding_rule_project_id | 字串 | 轉送規則的Cloud de Confiance 專案 ID |
| reporter | 字串 | Cloud Load Balancing 報告者。可以是 CLIENT 或 BACKEND。
|
| 類型 | 字串 | 負載平衡器類型。可以是 APPLICATION_LOAD_BALANCER、PROXY_NETWORK_LOAD_BALANCER、PASSTHROUGH_NETWORK_LOAD_BALANCER 或 PROTOCOL_FORWARDING。 |
| scheme | 字串 | 負載平衡器架構。可以是 EXTERNAL_MANAGED、INTERNAL_MANAGED、EXTERNAL、INTERNAL 或 INTERNAL_SELF_MANAGED。 |
| url_map_name | 字串 | 網址對應的名稱。如果負載平衡器類型為 APPLICATION_LOAD_BALANCER,則會填入這個欄位。 |
| forwarding_rule_name | 字串 | 轉送規則名稱 |
| backend_service_name | 字串 | 後端服務的名稱。如果回報端為 BACKEND,且負載平衡器類型為 PASSTHROUGH_NETWORK_LOAD_BALANCER,則會填入這個欄位。如果後端群組類型為 TARGET_POOL,系統就不會填入這個欄位。 |
| backend_service_project_id | 字串 | 後端服務的專案 ID。如果回報端為 BACKEND,且負載平衡器類型為 PASSTHROUGH_NETWORK_LOAD_BALANCER,系統就會填入這個欄位。如果後端群組類型為 TARGET_POOL,系統就不會填入這個欄位。 |
| backend_group_name | 字串 | 後端群組的名稱。如果回報端為 BACKEND,且負載平衡器類型為 PASSTHROUGH_NETWORK_LOAD_BALANCER,則會填入這個欄位。 |
| backend_group_type | 字串 | 後端群組的類型。可以是 INSTANCE_GROUP、NETWORK_ENDPOINT_GROUP 或 TARGET_POOL。如果回報端為 BACKEND,且負載平衡器類型為 PASSTHROUGH_NETWORK_LOAD_BALANCER,系統就會填入這個欄位。 |
| backend_group_location | 字串 | 後端群組的位置。可以是可用區或區域,取決於後端群組的範圍是可用區或區域。如果回報端為 BACKEND,且負載平衡器類型為 PASSTHROUGH_NETWORK_LOAD_BALANCER,系統就會填入這個欄位。如果後端群組類型為 TARGET_POOL,系統就不會填入這個欄位。 |
| 虛擬私人雲端 | VpcDetails | 負載平衡器的虛擬私有雲網路詳細資料 |
NatGatewayDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| gateway_name | 字串 | Cloud NAT 閘道的名稱 |
| router_name | 字串 | 與 Cloud NAT 閘道相關聯的 Cloud Router 名稱 |
| project_id | 字串 | Cloud de Confiance Cloud NAT 閘道和 Cloud Router 的專案 ID |
| 區域 | 字串 | Cloud NAT 閘道和 Cloud Router 的區域 |
| 類型 | 字串 | Cloud NAT 類型:PUBLIC 或 PRIVATE |
NetworkServiceDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| dscp | int32 | 如果封包標頭有 Differentiated Services 欄位,這個欄位會填入 DSCP 值。 |
封包捨棄原因
下表說明 SRC 或 SRC_GATEWAY 回報時,drop_reason 欄位支援的值。
| 捨棄原因 | 說明 |
|---|---|
FIREWALL_DENY |
系統評估了輸出防火牆規則,並執行「 建議:如要允許這類流量,請調整防火牆規則。 |
NAT_ENDPOINT_INDEPENDENT_CONFLICT |
發生與端點無關的對應衝突,因此傳出流量遭到捨棄。 建議:請參閱下列 Cloud NAT 說明文件: |
NAT_OUT_OF_CONNECTIONS |
NAT 連線追蹤表格已達容量上限,因此系統捨棄了傳出流量。 |
NAT_OUT_OF_PORTS |
Cloud NAT 閘道已用盡可指派給 VM 的 NAT 2 元組 (通訊埠),因此捨棄傳出流量。因此,VM 網路介面無法使用閘道傳送封包。 建議:請確認 NAT IP 位址和每個 VM 的通訊埠分配數量充足。詳情請參閱「IP 位址和通訊埠」。 |
NO_MATCHING_ROUTE |
由於沒有符合目的地的路徑,因此傳出流量遭到捨棄。 建議:使用 Cloud de Confiance 控制台的「Effective Routes」(有效路徑) 專區,查看虛擬私有雲網路中的路徑。您也可以建立及執行 Connectivity Tests。 |
QUEUE_OVERFLOW |
主機的封包處理軟體超出 CPU 容量,因此傳出流量遭到捨棄。 建議:如果封包持續遭到捨棄,建議使用頻寬較高 (Tier_1) 的 VM,或將流量分散至更多 VM。 |
SPOOFED_SOURCE |
封包來源與 VM 網路介面無關聯,且 IP 轉送功能已關閉,因此傳出流量已捨棄。 建議:如要從 VM 網路介面傳送任意來源的封包,到虛擬私有雲網路內可轉送的目的地,您必須為 VM 啟用 IP 轉送功能。 |
TOO_MANY_CONNECTIONS |
主機的封包處理軟體無法容納流量,因此傳出流量遭到捨棄。 建議:建議您改用專為大量連線設計的其他機器系列,或將工作負載分配至更多 VM。 |
下表說明 DEST 或 DEST_GATEWAY 回報時,drop_reason 欄位支援的值。
| 捨棄原因 | 說明 |
|---|---|
EARLY_DROPS_FULL_FAIR_QUEUE |
主機的封包處理軟體強制執行資源公平性,因此捨棄傳入流量。這種行為通常只會影響第 1 代機器系列。 建議:如果持續發生掉幀情形,建議改用較新或效能較佳的機器系列。 |
FIREWALL_DENY |
系統評估輸入防火牆規則後,發現其動作為「 建議:如要允許這類流量,請調整防火牆規則。 |
INVALID_L4_CHECKSUM_INTERNET |
偵測到核對和不符,因此已捨棄傳入流量。封包是從虛擬私有雲網路外部的來源,傳送至與 VM 回報者相關聯的目的地外部 IP 位址。詳情請參閱「輸入至虛擬私有雲網路以外的目的地」。 建議:如果持續發生丟失情形,請檢查來源或網路路徑的健康狀態。 |
INVALID_L4_CHECKSUM_INTERNAL |
偵測到核對和不符,因此已捨棄傳入流量。封包在虛擬私有雲網路中轉送至與 VM 回報者相關聯的目的地 IP 位址。詳情請參閱「可透過虛擬私有雲網路轉送至目的地的輸入流量」。 建議:如果持續發生丟棄情形,請檢查來源或網路路徑的健康狀態。 |
PSC_NAT_OUT_OF_CONNECTIONS |
Private Service Connect 端點已達到用戶的同時連線數量上限,因此捨棄傳入流量。 建議:請用戶降低連至這個 Private Service Connect 端點的新連線速率,或使用更多用戶端 VM,將連線分散至這個 Private Service Connect 端點。 |
PSC_NAT_OUT_OF_PORTS |
Private Service Connect NAT 通訊埠耗盡,因此來自 Private Service Connect 用戶的傳入流量遭到捨棄。 建議:請檢查 NAT 子網路大小。 |
QUEUE_OVERFLOW |
主機的封包處理軟體超出 CPU 容量,因此捨棄傳入流量。 建議:如果封包持續遭到捨棄,建議使用頻寬較高 (Tier_1) 的 VM,或將流量分散至更多 VM。 |
TOO_MANY_CONNECTIONS |
主機的封包處理軟體無法容納流量,因此捨棄傳入流量。 建議:如果流量過高是因為 VM 層級的連線並行率或流失率過高,請考慮降低 VM 的新連線速率。 |
PrivateServiceConnectDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| reporter | 字串 | Private Service Connect 回報者。可以是 CONSUMER 或 PRODUCER。 |
| consumer_connection | IpConnection |
從用戶端角度描述流量的網路位址轉譯前 5 元組。如果回報者為 PRODUCER,則會填入。 |
| psc_endpoint | PrivateServiceConnectEndpointDetails | 用戶端端點詳細資料 |
| psc_attachment | PrivateServiceConnectAttachmentDetails | 供應端服務連結詳細資料 |
PrivateServiceConnectEndpointDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| 名稱 | 字串 |
Private Service Connect 端點的名稱。只有在 target_service_type 為 PUBLISHED_SERVICE 時,系統才會填入這個欄位。 |
| project_id | 字串 | 端點的Cloud de Confiance 專案 ID。 |
| 區域 | 字串 | 端點的區域。如果目標服務類型為 GLOBAL_GOOGLE_APIS,則不會填入這個欄位。 |
| psc_connection_id | 字串 | Private Service Connect 連線 ID |
| target_service_type | 字串 | 目標服務類型。可以是 GLOBAL_GOOGLE_APIS 或 PUBLISHED_SERVICE。 |
| 虛擬私人雲端 | VpcDetails |
端點的虛擬私有雲網路詳細資料。
如果回報者是 PRODUCER,系統不會填入 subnetwork_name 和 subnetwork_region 欄位。 |
PrivateServiceConnectAttachmentDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| 名稱 | 字串 | 服務連結的名稱 |
| project_id | 字串 | 服務連結的Cloud de Confiance 專案 ID |
| 區域 | 字串 | 服務連結的區域 |
| 虛擬私人雲端 | VpcDetails | 服務連結的虛擬私有雲網路詳細資料 |
PrivateServiceConnectInterfaceDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| network_attachment | NetworkAttachmentDetails | 用戶網路連結的中繼資料 |
| producer | ProducerDetails | 發起連線的供應端中繼資料 |
NetworkAttachmentDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| 名稱 | 字串 | 網路連結的名稱 |
| project_id | 字串 | 網路連結的Cloud de Confiance 專案 ID |
| 區域 | 字串 | 網路連結的區域 |
ProducerDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| project_id | 字串 |
Cloud de Confiance 供應商的專案 ID。只有在 service_class_id 欄位無法使用時,系統才會填入這個欄位。 |
| 區域 | 字串 | 供應商 VM 的區域 |
| service_class_id | 字串 | 生產者服務類別的 ID (如有) |
| 儲存區 | 字串 | 供應商 VM 的可用區 |
ServerlessDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| project_id | 字串 | Cloud Run 或 App Engine 資源所屬 Cloud de Confiance 專案的 ID。在 Shared VPC 設定中,專案 ID 通常是服務專案的 ID。 |
| 區域 | 字串 | Cloud Run 或 App Engine 資源的區域 |
可以是下列其中一項:
|
可以是下列其中一項: |
Cloud Run 或 App Engine 資源的名稱 |
CloudRunServiceDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| service_name | 字串 | Cloud Run 服務名稱 |
CloudRunJobDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| job_name | 字串 | Cloud Run 工作的名稱 |
CloudRunWorkerPoolDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| worker_pool_name | 字串 | Cloud Run worker 集區的名稱 |
AppEngineServiceDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| service_name | 字串 | App Engine 服務名稱 |
VpcDetails 欄位格式
| 欄位 | 類型 | 說明 |
|---|---|---|
| project_id | 字串 | 虛擬私有雲所在 Cloud de Confiance 專案的 ID。在 Shared VPC 設定中,專案 ID 是主專案的 ID。 |
| subnetwork_name | 字串 | 子網路名稱 (如適用) |
| subnetwork_region | 字串 | 子網路所在區域 (如適用) |
| vpc_name | 字串 | 網路名稱 |
中繼資料註解
記錄包含基本欄位和中繼資料欄位。「記錄格式」一節會列出哪些欄位是中繼資料類型,哪些是基本類型。所有基本欄位一律會包含,您可以自訂要保留的中繼資料欄位。
如果選取所有中繼資料,虛擬私有雲流量記錄格式中的所有中繼資料欄位都會納入流量記錄。記錄格式新增中繼資料欄位時,流量記錄會自動納入這些新欄位。
如果未選取任何中繼資料,系統會省略所有中繼資料欄位。
如果選取自訂中繼資料,可以依據父項欄位 (例如
src_vpc) 或完整名稱 (例如src_vpc.project_id) 指定要納入的中繼資料欄位記錄格式新增中繼資料欄位時,除非這些欄位位於您指定要納入的上層欄位中,否則不會納入流程記錄。
如果您使用父項欄位指定自訂中繼資料,當該父項欄位內的記錄格式新增中繼資料欄位時,流量記錄會自動納入新欄位。
如果您使用欄位的全名指定自訂中繼資料,則新增至父項欄位的新中繼資料欄位會從流量記錄中排除。
如要瞭解如何自訂中繼資料欄位,請參閱「啟用虛擬私有雲流量記錄」或「更新虛擬私有雲流量記錄設定」。
跨專案註解
如果在組織層級啟用虛擬私有雲流量記錄,系統會為通過 Shared VPC、虛擬私有雲網路對接和 Network Connectivity Center 的流量加上跨專案註解。跨專案註解預設為啟用。您可以視需要停用這些註解。
- 如果啟用跨專案註解,不同專案資源之間的流量記錄會包含流量兩端的資訊。
- 如果停用跨專案註解,記錄檔只會包含流量回報者的資訊。
如果在專案層級啟用虛擬私有雲流量記錄,不同專案資源之間的流量不會加上跨專案註解。
GKE 註解
如果流量的端點位於 GKE 叢集,則可使用 GKE 中繼資料註解進行註解,其中可包含端點的叢集、Pod 和 Service 詳細資料。
GKE Service 註解
傳送至 ClusterIP、NodePort 或 LoadBalancer 的流量可以接收 Service 註解。如果傳送至 NodePort 或 LoadBalancer,流量會在連線的兩個躍點上接收 Service 註解。
直接傳送至 Pod Service 通訊埠的流量,會在目的地端點加上 Service 註解。
如果 Pod 在同一個 Service 通訊埠上支援多個 Service,則傳送至 Pod Service 通訊埠的流量,會在目的地端點上加上多個 Service 的註解。最多只能選取兩項服務。如果超過這個數量,端點會加上特殊的 MANY_SERVICES 標記。
網際網路流量的 Pod 註解
根據預設,Pod 和網際網路之間的流量不會收到 Pod 註解。虛擬私有雲流量記錄無法新增 Pod 註解,因為對於傳送至網際網路的封包,偽裝代理程式會在虛擬私有雲流量記錄看到封包之前,將 Pod IP 位址轉譯為節點 IP 位址。
由於偽裝,只有在目的地位於預設非偽裝目的地或自訂 nonMasqueradeCIDRs 清單中時,Pod 註解才會顯示。如果您在自訂 nonMasqueradeCIDRs 清單中加入網際網路目的地,則必須提供一種方法,將內部 Pod IP 位址轉譯後,再傳送至網際網路。無論是私人或非私人叢集,都可以使用 Cloud NAT。詳情請參閱「GKE 互動」。
捨棄流量的記錄
虛擬私有雲流量記錄會為遭捨棄的流量產生記錄。遭捨棄流量的記錄會與標準記錄分開產生。封包捨棄作業會依流量和捨棄原因匯總。在匯總時間間隔內,系統會將捨棄原因相同的封包合併為一筆記錄,並為每個不同的捨棄原因產生個別記錄。
輸出捨棄作業是由來源 (SRC 或 SRC_GATEWAY) 回報,輸入捨棄作業則由目的地 (DEST 或 DEST_GATEWAY) 回報。如果來源和目的地都啟用虛擬私有雲流量記錄,則會套用下列行為:
- 輸出捨棄。如果來源端發生捨棄,系統會為來源產生標準記錄和包含捨棄原因的記錄。由於流量從未傳送至目的地,因此不會為目的地產生記錄。
- Ingress 掉落物。如果目的地端發生丟棄,系統會為來源和目的地產生記錄。虛擬私有雲流量記錄會為來源產生標準記錄,並為目的地產生僅包含捨棄原因的記錄。
遭捨棄流量的記錄包含 disposition、drop_reason、bytes_dropped、packets_dropped 和 throughput_inclusion 欄位。
如需追蹤的封包捨棄原因清單,請參閱「封包捨棄原因」。
記錄篩選
啟用虛擬私有雲流量記錄時,您可以根據基本和中繼資料欄位設定篩選器,只保留符合篩選條件的記錄。所有其他記錄都會在寫入 Logging 前捨棄。
您可以篩選「記錄格式」中列出的任何欄位子集,但下列欄位除外:
rtt_msecbytes_sentpackets_sentstart_timeend_timebytes_droppedpackets_droppedthroughput_inclusion
虛擬私有雲流量記錄篩選功能使用 CEL,這是一種嵌入式運算式語言,用於以屬性為基礎的邏輯運算式。虛擬私有雲流量記錄的篩選運算式長度上限為 2,048 個字元。詳情請參閱「支援的 CEL 邏輯運算子」。
如要進一步瞭解 CEL,請參閱 CEL 簡介和語言定義。產生篩選器功能支援部分 CEL 語法。
如要建立使用記錄篩選功能的虛擬私有雲流量記錄設定,請參閱「啟用虛擬私有雲流量記錄」。如要為現有的虛擬私有雲流量記錄設定記錄篩選功能,請參閱「更新虛擬私有雲流量記錄設定」。如需記錄檔篩選器範例,請參閱「記錄檔篩選器範例」。
支援的 CEL 邏輯運算子
| 運算式 | 支援的類型 | 說明 |
|---|---|---|
| true/false | 布林值 | 布林值常數 |
x == y x != y |
boolean、int、string | 比較運算子 範例:connection.protocol == 6 |
x && y x || y |
布林值 | 布林邏輯運算子 範例:connection.protocol == 6 && src_instance.vm_name == "vm_1" |
| !x | 布林值 | 否定 |
| 1、2.0、0、... | 整數 | 常數數值常值 |
| x + y | 字串 | 字串串連 |
| "foo", 'foo', ... | 字串 | 常數字串常值 |
| x.lower() | 字串 | 傳回字串的小寫值 |
| x.upper() | 字串 | 傳回字串的大寫值 |
| x.contains(y) | 字串 | 如果字串包含指定子字串,則傳回「是」 |
| x.startsWith(y) | 字串 | 如果字串開頭為指定子字串,則傳回 true |
| x.endsWith(y) | 字串 | 如果字串結尾是指定子字串,則傳回 true |
| inIpRange(X, Y) | 字串 | 如果 X 是 IP,且 Y 是包含 X 的 IP 範圍,則傳回 true 範例:inIpRange("1.2.3.1", "1.2.3.0/24") |
| x.containsFieldValue(y) |
x:清單 y:對應(字串、字串) |
如果清單包含的物件欄位與指定的鍵/值組合相符,則傳回「是」 範例:dest_gke_details.service.containsFieldValue({'service_name': 'service1', 'service_namespace': 'namespace1'}) |
| has(x) | string | 如果欄位存在,則傳回 true。 |
App Hub 標籤
如果 Cloud de Confiance 資源已註冊為 App Hub 工作負載或服務,記錄檔會包含應用程式專屬標籤。VPC Flow Logs 包含下列資源相關流量的標籤:
- Compute Engine 代管執行個體群組
- GKE Pod (
CRON_JOB、DAEMON_SET、DEPLOYMENT和STATEFUL_SET工作負載類型) - 設定為使用直連虛擬私有雲輸出的 Cloud Run 服務和工作
- 轉送規則
在適用情況下,每筆記錄最多會附加一個來源資源和一個目的地資源的 App Hub 標籤。如果是轉送規則,CLIENT 和 BACKEND 欄位會決定轉送規則是來源還是目的地資源。
App Hub 標籤與虛擬私有雲流量記錄中繼資料註解不同,虛擬私有雲流量記錄中繼資料和記錄篩選設定不適用於這些標籤。