關於虛擬私有雲流量記錄檔記錄

本頁面說明虛擬私有雲流量記錄檔的記錄格式,包括可用的基礎和中繼資料欄位。本文也會說明如何使用記錄篩選功能,只產生符合特定條件的記錄。

記錄格式

記錄包含做為每個記錄核心欄位的幾個基礎欄位,以及用來新增其他資訊的中繼資料欄位。您可能會省略中繼資料欄位,以節省儲存費用。

某些記錄欄位採用多欄位格式,也就是指定欄位會包含多項資料。舉例來說,connection 欄位採用的格式是 IpConnection,也就是一個欄位同時包含來源和目的地 IP 位址及通訊埠,外加通訊協定等資料。記錄格式表下方說明這些多欄位格式的欄位。

中繼資料欄位的值並非根據資料平面路徑計算,而是近似值,可能遺漏或不正確。與中繼資料欄位不同,基本欄位的值直接取自封包標頭。

欄位 欄位格式 欄位類型:基本或選填中繼資料
連結 IpConnection
描述流程的 5 元組。
基本
reporter 字串
回報流量的一端:
  • 如果是 VM 和無伺服器端點,則回報者可以是 SRCDEST
  • 如果是閘道 (例如 Cloud Interconnect 的 VLAN 連結和 Cloud VPN 通道),回報者可以是 SRC_GATEWAYDEST_GATEWAY
基本
round_trip_time 延遲時間
在匯總間隔期間測得的 RTT,以毫秒為單位,精確度可達毫秒以下。這個欄位會填入 TCP (適用於 VM 和無伺服器端點) 和 Falcon 流量。
  • 如果是 TCP 流量,測得的延遲時間是指從傳送 SEQ 到收到相應 ACK 之間經過的時間。
  • 如果是 Falcon 流量,延遲時間就是硬體測量的封包往返時間。
捨棄的流量 (disposition=DROPPED) 不會填入這項資料。
基本
rtt_msec int64
在匯總間隔期間測得的封包往返時間 (RTT),以毫秒為單位。這個欄位會填入下列資訊:
  • 僅針對 TCP 流量測量
  • 適用於 VM 和無伺服器端點
  • 不適用於 VLAN 連結和 Cloud VPN 通道
  • 遭捨棄的流量不會填入這項資料 (disposition=DROPPED)

測得的 RTT 是指從傳送 SEQ 到收到相應 ACK 之間經過的時間。

基本
bytes_sent int64
從來源傳送至目的地的預估使用者酬載位元組數。1 如果封包沒有使用者酬載,值為零。2 已捨棄的流量 (disposition=DROPPED) 不會填入這個值。
基本
packets_sent int64
從來源傳送至目的地的預估封包數。1不會為遭捨棄的流量 (disposition=DROPPED) 填入值。
基本
start_time 字串
採用 RFC 3339 日期字串格式的時間戳記,標記了在匯總時間間隔內發現第一個封包的時間點。
基本
end_time 字串
採用 RFC 3339 日期字串格式的時間戳記,標記了在匯總時間間隔內發現最後一個封包的時間點。
基本
disposition 字串
僅在有封包捨棄記錄時,才會填入固定的「DROPPED」值。這個欄位設為 DROPPED
基本
drop_reason 字串
只會針對具有 disposition=DROPPED 的記錄填入。 詳情請參閱「封包捨棄註解」和「封包捨棄原因」。
基本
bytes_dropped int64
從來源到目的地之間,預估使用者酬載位元組數的丟失量。只有在記錄有 disposition=DROPPED 時,才會填入字串,
基本
packets_dropped int64
預計從來源傳送至目的地的封包數。 只有在記錄含有 disposition=DROPPED 時,系統才會填入字串,
基本
throughput_inclusion 字串
只會針對具有 disposition=DROPPED 的記錄填入。 指出是否在同一位回報者回報的流程中,將捨棄的流量計入 bytes_sentpackets_sent 欄位 (INCLUDED),或從中排除 (EXCLUDED)。
基本
來源和目的地中繼資料欄位
src_gateway GatewayDetails
如果流量來源是透過閘道 (例如 Cloud Interconnect 的 VLAN 連結或 Cloud VPN 通道) 連線至 Google Cloud 的地端部署或其他雲端端點,且符合下列任一條件,這個欄位就會填入閘道詳細資料:
  • 來源閘道是流程的報告者。
  • 流程目的地為檢舉人,且符合下列任一條件:
    • 來源閘道與流程目的地位於相同專案。
    • 虛擬私有雲流量記錄是在組織層級設定,且未停用跨專案註解。3
中繼資料
dest_gateway GatewayDetails
如果流量目的地是透過閘道 Google Cloud (例如 Cloud Interconnect 的 VLAN 連結或 Cloud VPN 通道) 連線的地端部署或其他雲端端點,且符合下列任一條件,這個欄位就會填入閘道詳細資料:
  • 目的地閘道是流量的報告者。
  • 流程來源為檢舉人,且符合下列任一條件:
    • 目的地閘道與流程來源位於相同專案。
    • 虛擬私有雲流量記錄是在組織層級設定,且未停用跨專案註解。3
中繼資料
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 執行個體詳細資料:
  • 來源 VM 是流程的報告者。
  • 流程目的地為檢舉人,且符合下列任一條件:
    • 來源 VM 或來源 VM 所連線的虛擬私有雲網路,與流程目的地位於同一個專案。
    • 虛擬私有雲流量記錄是在組織層級設定,且未停用跨專案註解。3
中繼資料
dest_instance InstanceDetails
如果流量目的地是位於虛擬私有雲網路中的 VM,且符合下列任一條件,這個欄位就會填入 VM 執行個體詳細資料。
  • 目的地 VM 是流程的報告者。
  • 流程來源為檢舉人,且符合下列任一條件:
    • 目的地 VM 或目的地 VM 所連結的虛擬私有雲網路,與流量來源位於同一個專案。
    • 虛擬私有雲流量記錄是在組織層級設定,且未停用跨專案註解。3
中繼資料
src_location GeographicDetails
如果流程來源是虛擬私有雲網路外部的公開 IP 位址,這個欄位會填入可用的地點中繼資料。
中繼資料
dest_location GeographicDetails
如果流程目的地是虛擬私有雲網路外部的公開 IP 位址,這個欄位會填入可用的地點中繼資料。
中繼資料
src_serverless_details ServerlessDetails
如果流程來源是無伺服器端點,例如設定直連虛擬私有雲輸出的 Cloud Run 資源,這個欄位會填入無伺服器中繼資料。
中繼資料
dest_serverless_details ServerlessDetails
如果流量目的地是無伺服器端點,例如設定直連虛擬私有雲輸出的 Cloud Run 資源,這個欄位就會填入無伺服器中繼資料。
中繼資料
src_vpc VpcDetails
如果流量來源是位於虛擬私有雲網路中的 VM 或無伺服器端點,且符合下列任一條件,這個欄位會填入虛擬私有雲網路的詳細資料:
  • 來源資源是流程的檢舉者。
  • 流程目的地為檢舉人,且符合下列任一條件:
    • 來源資源或來源資源所連結的虛擬私有雲網路,與流程目的地位於同一個專案。
    • 虛擬私有雲流量記錄是在組織層級設定,且未停用跨專案註解。3
中繼資料
dest_vpc VpcDetails
如果流量目的地是位於虛擬私有雲網路中的 VM 或無伺服器端點,且符合下列任一條件,這個欄位會填入虛擬私有雲網路的詳細資料:
  • 目的地資源是流程的檢舉人。
  • 流程來源為檢舉人,且符合下列任一條件:
    • 目的地資源或目的地資源所連結的虛擬私有雲網路,與流量來源位於相同專案。
    • 虛擬私有雲流量記錄是在組織層級設定,且未停用跨專案註解。3
中繼資料
其他中繼資料欄位
internet_routing_details InternetRoutingDetails
如果流量介於 Google Cloud 和網際網路之間, 這個欄位會填入轉送詳細資料。僅適用於出口流量。
中繼資料
load_balancing LoadBalancingDetails
如果流量通過下列其中一種設定的負載平衡器,這個欄位就會填入 Cloud Load Balancing 詳細資料:
  • 流量的回報端是負載平衡器的用戶端,負載平衡器類型為 APPLICATION_LOAD_BALANCERPROXY_NETWORK_LOAD_BALANCERPASSTHROUGH_NETWORK_LOAD_BALANCERPROTOCOL_FORWARDING
  • 流量的回報端是負載平衡器的後端,且負載平衡器類型為 PASSTHROUGH_NETWORK_LOAD_BALANCERPROTOCOL_FORWARDING
中繼資料
network_service NetworkServiceDetails
如果已設定區分服務代碼點 (DSCP) 標頭, 這個欄位會填入網路服務詳細資料。
中繼資料
psc PrivateServiceConnectDetails
如果流量與 Private Service Connect 連線 (包括透過 Network Connectivity Center 傳播的連線) 相關聯,且符合下列任一條件,這個欄位就會填入 Private Service Connect 詳細資料:
  • 流程的檢舉者是消費者,並使用 Private Service Connect 端點,目標是已發布的服務或全域 Google API。
  • 流量的報告者是生產者,並使用內部直通式網路負載平衡器或內部通訊協定轉送。
中繼資料
rdma_traffic_type 字串
RDMA 流量類型。適用於 VM 之間的 GPU 對 GPU 流量。 可以是 GPUDirect-TCPXOFalconRoCE
中繼資料
1 預估總量是根據取樣封包計算而得。為獲得最佳準確度,請匯總較長時段或多個資源的記錄。如要進一步瞭解準確度和取樣,請參閱「虛擬私有雲流量記錄:瞭解位元組和封包計數」 和「記錄檔取樣與處理」。
2 如果是 Falcon 流量,系統會以不同方式計算來源和目的地的傳送位元組值:
  • 如果來源 VM 是回報者,回報的位元組值是傳送的使用者酬載位元組和封包標頭位元組的總和。即使封包未包含使用者酬載,這個值一律會大於零。
  • 如果目的地 VM 是回報者,回報的位元組值就是使用者酬載位元組,這些位元組會收到並轉送至應用程式層。如果封包沒有使用者酬載,位元組值為零。
3 如果虛擬私有雲流量記錄檔是在機構層級設定,根據預設,跨專案流量的記錄檔記錄會包含流量兩端的詳細資料。透過 Shared VPC、VPC 網路對等互連和 Network Connectivity Center,即可為流程加上跨專案註解。詳情請參閱「跨專案註解」。

GatewayDetails 欄位格式

欄位 類型 說明
project_id 字串 Google Cloud 閘道的專案 ID
位置 字串 閘道區域
名稱 字串 閘道名稱
類型 字串 閘道類型。可以是 INTERCONNECT_ATTACHMENTVPN_TUNNEL
虛擬私人雲端 VpcDetails 閘道的虛擬私有雲網路詳細資料
interconnect_name 字串 如果閘道類型為 INTERCONNECT_ATTACHMENT,這個欄位會填入設定 VLAN 連結的 Cloud Interconnect 連線名稱。
interconnect_project_number int64 如果閘道類型為 INTERCONNECT_ATTACHMENT,這個欄位會填入 VLAN 連結設定所在的 Cloud Interconnect 連線 Google Cloud 專案編號。

GeographicDetails 欄位格式

欄位 類型 說明
asn int32 這個端點所屬外部網路的 ASN
城市 字串 外部端點所在的城市
continent 字串 外部端點所在的洲別
country 字串 外部端點的國家/地區,以 ISO 3166-1 Alpha-3 國家/地區代碼表示
區域 字串 外部端點的區域

GkeDetails 欄位格式

欄位 類型 說明
叢集 ClusterDetails GKE 叢集中繼資料
Pod PodDetails GKE Pod 中繼資料,會在流量的來源或目的地為 Pod 時填入
服務 ServiceDetails GKE 服務中繼資料,僅在服務端點中填入。記錄最多可包含兩項服務。如果相關服務超過兩項,這個欄位會顯示單一服務,並附上特殊的 MANY_SERVICES 標記。

ClusterDetails 欄位格式

欄位 類型 說明
cluster_location 字串 叢集位置。視叢集是區域性還是可用區而定,這可以是可用區或區域。
cluster_name 字串 GKE 叢集名稱。

PodDetails 欄位格式

欄位 類型 說明
pod_name 字串 Pod 名稱
pod_namespace 字串 Pod 的命名空間
工作負載 WorkloadDetails 控制 Pod 的頂層工作負載資源相關中繼資料
WorkloadDetails 欄位格式
欄位 類型 說明
workload_name 字串 頂層工作負載控制器的名稱
workload_type 字串 頂層工作負載控制器類型。可能的值為 DEPLOYMENTREPLICA_SETSTATEFUL_SETDAEMON_SETJOBCRON_JOBREPLICATION_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 欄位格式

欄位 類型 說明
類型 字串

服務類型,GOOGLE_APIGOOGLE_VPC_HOSTED_SERVICE

service_name 字串

服務名稱。例如:pubsub.googleapis.com

限制:

  • 如果對 Google API 的要求完成時間超過 60 秒,服務名稱可能會遺失。
  • 如果 VM 或閘道使用相同的 5 元組連線至多項服務,記錄檔記錄只會隨機選取其中一項服務的名稱。
連線能力 字串

存取方法。如果是 GOOGLE_API 類型,連線欄位可以是下列任一值:

  • PUBLIC_IP,如果 API 是從具有外部 IP 位址的 VM 存取
  • PRIVATE_GOOGLE_ACCESSDIRECT_CONNECTIVITY (如果 API 是透過 Private Google Access 存取)
  • PRIVATE_SERVICE_CONNECT_FOR_GOOGLE_APIS,如果 API 是透過 Private Service Connect 端點存取

如果是 GOOGLE_VPC_HOSTED_SERVICE 類型,連線欄位可以是下列任一值:

  • PUBLIC_IP,前提是服務是透過公開 IP 連線存取
  • PRIVATE_SERVICES_ACCESS,如果服務是透過私人服務存取權存取
  • PRIVATE_SERVICE_CONNECT_ENDPOINTPRIVATE_SERVICE_CONNECT_INTERFACE,如果服務是透過 Private Service Connect 存取
private_domain 字串

私有網域或 Private Service Connect API 套件。private_domain 欄位可以是下列任一值:

  • 如要使用 PRIVATE_GOOGLE_ACCESS 存取方法: private.googleapis.comrestricted.googleapis.com
  • 如要使用 DIRECT_CONNECTIVITY 存取方法: restricted.googleapis.com
  • 適用於 PRIVATE_SERVICE_CONNECT_FOR_GOOGLE_APIS 存取方法:all-apisvpc-sc

InstanceDetails 欄位格式

欄位 類型 說明
project_id 字串 Google Cloud 包含 VM 資源的專案 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 詳細資料清單。清單開頭是 Google Cloud網路外部的第一個 AS,結尾則是遠端 IP 位址所屬的 AS。

AsDetails 欄位格式

欄位 類型 說明
asn uint32 AS 的自治系統編號 (ASN)

IpConnection 欄位格式

欄位 類型 說明
src_ip 字串 來源 IP 位址。所有流程都會填入這項資訊。
dest_ip 字串 目標 IP 位址。所有流程都會填入這項資訊。
src_port int32 來源通訊埠:
  • 針對 TCP 和 UDP 流程填入
  • 不適用於 ICMP、ESP、GRE 和 RDMA 流程
dest_port int32 目的地通訊埠:
  • 針對 TCP 和 UDP 流程填入
  • 不適用於 ICMP、ESP、GRE 和 RDMA 流程
通訊協定 int32 IANA 通訊協定號碼:
  • 針對 TCP、UDP、ICMP、ESP 和 GRE 流程填入
  • RDMA 流程不會填入這項資訊

延遲欄位格式

欄位 類型 說明
median_msec 雙精度值 在彙整間隔期間測得的中位數延遲時間 (毫秒)。

LoadBalancingDetails 欄位格式

欄位 類型 說明
forwarding_rule_project_id 字串 轉送規則的Google Cloud 專案 ID
reporter 字串 Cloud Load Balancing 記者。可以是 CLIENTBACKEND
  • 如果流量回報端是負載平衡器的用戶端,這個欄位會設為 CLIENT
  • 如果流量的回報端是負載平衡器的後端,這個欄位會設為 BACKEND
類型 字串 負載平衡器類型。可以是 APPLICATION_LOAD_BALANCERPROXY_NETWORK_LOAD_BALANCERPASSTHROUGH_NETWORK_LOAD_BALANCERPROTOCOL_FORWARDING
配置 字串 負載平衡器架構。可以是 EXTERNAL_MANAGEDINTERNAL_MANAGEDEXTERNALINTERNALINTERNAL_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_GROUPNETWORK_ENDPOINT_GROUPTARGET_POOL。如果回報端為 BACKEND,且負載平衡器類型為 PASSTHROUGH_NETWORK_LOAD_BALANCER,則會填入這個欄位。
backend_group_location 字串 後端群組的位置。視後端群組的範圍是可用區或區域而定,可以是可用區或區域。如果回報端為 BACKEND,且負載平衡器類型為 PASSTHROUGH_NETWORK_LOAD_BALANCER,系統就會填入這個欄位。如果後端群組類型為 TARGET_POOL,系統就不會填入這個欄位。
虛擬私人雲端 VpcDetails 負載平衡器的虛擬私有雲網路詳細資料

NetworkServiceDetails 欄位格式

欄位 類型 說明
dscp int32 如果封包標頭有 Differentiated Services 欄位,這個欄位會填入 DSCP 值。

封包捨棄原因

下表說明 SRCSRC_GATEWAY 回報時,drop_reason 欄位支援的值。

捨棄原因 說明
FIREWALL_DENY

由於系統評估了傳出防火牆規則,且其動作為 deny,因此傳出流量遭到捨棄。

建議:如要允許這類流量,請調整防火牆規則。

NO_MATCHING_ROUTE

由於沒有與目的地相符的路由,傳出流量遭到捨棄。

建議:在 Google Cloud 控制台使用「有效路徑」部分,檢查虛擬私有雲網路中的路徑。您也可以建立及執行Connectivity Tests

QUEUE_OVERFLOW

主機的封包處理軟體超出 CPU 容量,因此傳出流量遭到捨棄。

建議:如果持續發生封包遺失情形,請考慮使用頻寬較高 (Tier_1) 的 VM,或將流量分散到更多 VM。

SPOOFED_SOURCE

由於封包來源與 VM 網路介面沒有關聯,且 IP 轉送已關閉,因此傳出流量遭到捨棄。

建議:如要從 VM 網路介面傳送任意來源的封包,到虛擬私有雲網路內可路由傳送的目的地,您必須為 VM 啟用 IP 轉送

TOO_MANY_CONNECTIONS

主機的封包處理軟體無法配合流量速率,因此捨棄了輸出流量。

建議:考慮使用專為大量連線設計的機器系列,或將工作負載分散到更多 VM。

下表說明 DESTDEST_GATEWAY 回報時,drop_reason 欄位支援的值。

捨棄原因 說明
EARLY_DROPS_FULL_FAIR_QUEUE

主機的封包處理軟體強制執行資源公平性,因此捨棄了連入流量。這種情況通常只會影響第 1 代機器系列

建議做法:如果持續發生掉線問題,建議遷移至效能較佳的新型機器系列。

FIREWALL_DENY

由於系統評估了輸入防火牆規則,且其動作為 deny,因此捨棄了輸入流量。

建議:如要允許這類流量,請調整防火牆規則。

INVALID_L4_CHECKSUM_INTERNET

系統偵測到總和檢查碼不符,因此捨棄了傳入流量。封包是從虛擬私有雲網路外部的來源,傳送至與 VM 報告器相關聯的目的地外部 IP 位址。詳情請參閱「連線至虛擬私有雲網路外部的目的地」。

建議:如果持續發生封包遺失問題,請調查來源或網路路徑的健康狀態。

INVALID_L4_CHECKSUM_INTERNAL

系統偵測到總和檢查碼不符,因此捨棄了傳入流量。封包在虛擬私有雲網路中,會轉送至與 VM 報告器相關聯的目的地 IP 位址。詳情請參閱「Ingress to destinations routable within a 虛擬私有雲網路」。

最佳化建議:如果持續發生掉格情形,請調查來源或網路路徑的健康狀態。

PSC_NAT_OUT_OF_CONNECTIONS

由於 Private Service Connect 端點已達到消費者可同時連線的數量上限,因此系統捨棄了連入流量。

建議:請消費者降低連至這個 Private Service Connect 端點的新連線速率,或請消費者使用更多用戶端 VM,將連線分配至這個 Private Service Connect 端點。

PSC_NAT_OUT_OF_PORTS

來自 Private Service Connect 使用者的連入流量遭到捨棄,因為 Private Service Connect NAT 通訊埠已用盡。

建議:請檢查 NAT 子網路大小

QUEUE_OVERFLOW

主機的封包處理軟體超出 CPU 容量,因此捨棄了連入流量。

建議:如果持續發生封包遺失情形,請考慮使用頻寬較高 (Tier_1) 的 VM,或將流量分散到更多 VM。

TOO_MANY_CONNECTIONS

由於主機的封包處理軟體無法配合流量速率,因此系統捨棄了連入流量。

建議:如果高流量率是因 VM 層級的連線並行或周轉率過高所致,請考慮降低 VM 的新連線速率。

PrivateServiceConnectDetails 欄位格式

欄位 類型 說明
reporter 字串 Private Service Connect 記者。 可以是 CONSUMERPRODUCER
psc_endpoint PrivateServiceConnectEndpointDetails 端點詳細資料。如果檢舉者是 CONSUMER,系統就會填入這項資訊。
psc_attachment PrivateServiceConnectAttachmentDetails 服務連結詳細資料。如果流量包含 Private Service Connect 供應商,這個欄位就會填入資料。

PrivateServiceConnectEndpointDetails 欄位格式

欄位 類型 說明
project_id 字串 Google Cloud Private Service Connect 端點的專案 ID
區域 字串 端點所在的區域。如果目標服務類型為 GLOBAL_GOOGLE_APIS,則不會填入這個值。
psc_connection_id 字串 Private Service Connect 連線 ID
target_service_type 字串 目標服務類型。可以是 GLOBAL_GOOGLE_APISPUBLISHED_SERVICE
虛擬私人雲端 VpcDetails Private Service Connect 端點的虛擬私有雲網路詳細資料

PrivateServiceConnectAttachmentDetails 欄位格式

欄位 類型 說明
project_id 字串 服務連結的專案 IDGoogle Cloud
區域 字串 服務連結的區域
虛擬私人雲端 VpcDetails 服務附件的虛擬私有雲網路詳細資料

ServerlessDetails 欄位格式

欄位 類型 說明
project_id 字串 Cloud Run 資源所屬 Google Cloud 專案的 ID。在 Shared VPC 設定中,專案 ID 通常是服務專案的 ID。
區域 字串 Cloud Run 資源的區域

可以是下列其中一項:

  • cloud_run_service_details
  • cloud_run_job_details
  • cloud_run_worker_pool_details

可以是下列其中一項:

Cloud Run 資源的名稱

CloudRunServiceDetails 欄位格式

欄位 類型 說明
service_name 字串 Cloud Run 服務名稱

CloudRunJobDetails 欄位格式

欄位 類型 說明
job_name 字串 Cloud Run 工作名稱

CloudRunWorkerPoolDetails 欄位格式

欄位 類型 說明
worker_pool_name 字串 Cloud Run worker 集區的名稱

VpcDetails 欄位格式

欄位 類型 說明
project_id 字串 含有虛擬私有雲的 Google Cloud 專案 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 和服務詳細資料。

GKE 服務註解

傳送至 ClusterIP、NodePort 或 LoadBalancer 的流量可以接收服務註解。如果傳送至 NodePort 或 LoadBalancer,流程會在連線的兩個躍點上收到 Service 註解。

直接傳送至 Pod 服務通訊埠的流量,會在目的地端點上加上服務註解。

如果傳送至 Pod 服務通訊埠的流量,是由 Pod 在同一個服務通訊埠上支援多個服務,系統會在目的地端點上註解多個服務。最多只能有兩項服務。如果超過這個數量,端點會以特殊 MANY_SERVICES 標記註解。

網際網路流量的 Pod 註解

Pod 與網際網路之間的流量預設不會收到 Pod 註解。虛擬私有雲流量記錄無法新增 Pod 註解,因為對於傳送至網際網路的封包,偽裝代理程式會在虛擬私有雲流量記錄看到封包前,將 Pod IP 位址轉換為節點 IP 位址。

由於偽裝作業,只有在目的地位於預設非偽裝目的地自訂 nonMasqueradeCIDRs 清單中時,Pod 註解才會顯示。如果您在自訂 nonMasqueradeCIDRs 清單中加入網際網路目的地,則必須提供方法,讓內部 Pod IP 位址在遞送到網際網路前完成轉換。無論是私人或非私人叢集,您都可以使用 Cloud NAT。詳情請參閱「GKE 互動」。

捨棄流量的記錄

虛擬私有雲流量記錄會為遭捨棄的流量產生記錄。系統會分別產生遭捨棄流量的記錄和標準記錄。封包捨棄會依資料流和捨棄原因匯總。 在匯總間隔內,系統會將具有相同原因的封包捨棄項目,合併為單一記錄檔;並為每個不重複的捨棄原因產生個別記錄檔。

輸出捨棄是由來源 (SRCSRC_GATEWAY) 回報,輸入捨棄則是由目的地 (DESTDEST_GATEWAY) 回報。如果來源和目的地都已啟用虛擬私有雲流量記錄,則適用下列行為:

  • 輸出捨棄。如果來源端發生捨棄事件,系統會為來源產生標準記錄項目和包含捨棄原因的記錄項目。由於流量從未傳送至目的地,因此系統不會為目的地產生記錄。
  • 輸入捨棄。如果目的地端發生捨棄情形,系統會為來源和目的地產生記錄。對於來源,虛擬私有雲流量記錄會產生標準記錄檔記錄;對於目的地,則只會產生包含捨棄原因的記錄檔記錄。

遭捨棄流量的記錄包含 dispositiondrop_reasonbytes_droppedpackets_droppedthroughput_inclusion 欄位。

如需追蹤的封包捨棄原因清單,請參閱「封包捨棄原因」。

記錄篩選

啟用虛擬私有雲流量記錄後,您可以根據基本和中繼資料欄位設定篩選條件,只保留符合篩選條件的記錄。其他記錄檔會在寫入 Logging 前捨棄。

您可以根據「記錄格式」中列出的任何欄位子集進行篩選,但下列欄位除外:

  • rtt_msec
  • bytes_sent
  • packets_sent
  • start_time
  • end_time

虛擬私有雲流量記錄檔篩選器使用 CEL,這是一種內嵌的運算式語言,適用於以屬性為基礎的邏輯運算式。虛擬私有雲流量記錄的篩選運算式長度上限為 2,048 個半形字元。詳情請參閱「支援的 CEL 邏輯運算子」。

如要進一步瞭解 CEL,請參閱 CEL 簡介語言定義。生成篩選器功能僅支援部分 CEL 語法。

如要建立使用記錄篩選功能的虛擬私有雲流量記錄設定,請參閱「啟用虛擬私有雲流量記錄」。如要為現有的虛擬私有雲流量記錄設定篩選記錄,請參閱「更新虛擬私有雲流量記錄設定」。如需記錄篩選器範例,請參閱「記錄篩選器範例」。

支援的 CEL 邏輯運算子

運算式 支援的類型 說明
true/false 布林值 布林常數

x == y

x != y

布林值、整數、字串

比較運算子

範例: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) 字串 如果字串包含指定的子字串,則傳回 true
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:map(string, string)

如果清單包含的物件欄位與指定的鍵/值組合相符,則傳回 true

範例:dest_gke_details.service.containsFieldValue({'service_name': 'service1', 'service_namespace': 'namespace1'})

has(x) string

如果欄位存在,則傳回 true。

App Hub 標籤

對於 Google Cloud 註冊為 App Hub 工作負載或服務的資源,記錄檔會包含 應用程式專屬標籤。 虛擬私有雲流量記錄會為與下列資源相關聯的流量加上這些標籤:

  • Compute Engine 代管執行個體群組
  • GKE Pod (CRON_JOBDAEMON_SETDEPLOYMENTSTATEFUL_SET 工作負載類型)
  • 設定直連虛擬私有雲輸出流量的 Cloud Run 服務和作業
  • 轉送規則

每個記錄最多可附加一個來源資源和一個目的地資源的 App Hub 標籤 (如適用)。對於轉送規則,CLIENTBACKEND 欄位會決定轉送規則是來源還是目的地資源。

應用程式中樞標籤與虛擬私有雲流量記錄中繼資料註解不同;虛擬私有雲流量記錄中繼資料和記錄篩選設定不適用於這些標籤。

後續步驟