Informationen zu VPC-Flusslogs

Auf dieser Seite wird das Eintragsformat von VPC-Flusslogs beschrieben, einschließlich der verfügbaren Basis- und Metadatenfelder. Außerdem wird erklärt, wie Sie die Logfilterung nutzen, sodass nur Logs generiert werden, die bestimmten Kriterien entsprechen.

Eintragsformat

Logdatensätze umfassen Basisfelder – die wichtigsten Felder jedes Logdatensatzes – sowie Metadatenfelder, die zusätzliche Informationen enthalten. Metadatenfelder können weggelassen werden, um Speicherkosten zu sparen.

Einige Logfelder haben ein Mehrfeldformat mit mehr als einem Datenelement in einem bestimmten Feld. Das Feld connection hat beispielsweise das Format IpConnection. Dieses Format enthält die Quell- und Ziel-IP-Adresse sowie Protokoll und Port in einem einzigen Feld. Diese Felder mit Mehrfeldformat werden unter der Eintragsformattabelle beschrieben.

Hinweis: Die Werte für Metadatenfelder beruhen nicht auf dem Datenebenenpfad. Es handelt sich um Näherungswerte, die möglicherweise fehlen oder falsch sind. Im Gegensatz zu Metadatenfeldern werden die Werte für Basisfelder direkt aus Paketheadern übernommen.

Feld Feldformat Feldtyp: Basis- oder optionale Metadaten
Verbindung IpConnection
5-Tupel, das den Ablauf beschreibt.
Basis
reporter string
Die Seite, die den Datenfluss gemeldet hat:
  • Für VMs und serverlose Endpunkte kann der Reporter SRC oder DEST sein.
  • Bei Gateways wie VLAN-Anhängen für Cloud Interconnect und Cloud VPN-Tunneln kann der Reporter SRC_GATEWAY oder DEST_GATEWAY sein.
Basis
round_trip_time Latenzen
RTT in Millisekunden mit einer Präzision von weniger als einer Millisekunde, gemessen während des Aggregationsintervalls. Dieses Feld wird für TCP-Traffic (für VMs und serverlose Endpunkte) und Falcon-Traffic ausgefüllt.
  • Bei TCP-Traffic ist die gemessene Latenz die Zeit, die zwischen dem Senden einer SEQ und dem Empfang einer entsprechenden ACK vergangen ist.
  • Bei Falcon-Traffic ist die Latenz die hardwareseitig gemessene RTT.
Nicht für verworfenen Traffic (disposition=DROPPED) ausgefüllt.
Basis
rtt_msec int64
Umlaufzeit (Round Trip Time, RTT) in Millisekunden, gemessen während des Aggregationsintervalls. Dieses Feld wird so ausgefüllt:
  • Wird nur für TCP-Traffic gemessen
  • Für VMs und serverlose Endpunkte ausgefüllt
  • Für VLAN-Anhänge und Cloud VPN-Tunnel nicht ausgefüllt
  • Nicht für verworfenen Traffic verfügbar (disposition=DROPPED)

Die gemessene RTT ist die Zeit, die zwischen dem Senden einer SEQ und dem Empfang einer entsprechenden ACK vergangen ist.

Basis
bytes_sent int64
Geschätzte Anzahl der Nutzer-Nutzlast-Bytes, die von der Quelle an das Ziel gesendet werden.1 Bei Paketen ohne Nutzer-Nutzlast ist der Wert null.2 Wird nicht für verworfenen Traffic (disposition=DROPPED) ausgefüllt.
Basis
packets_sent int64
Geschätzte Anzahl der Pakete, die von der Quelle an das Ziel gesendet werden.1 Wird nicht für verworfene Zugriffe (disposition=DROPPED) ausgefüllt.
Basis
start_time string
Zeitstempel (RFC 3339-Datumsstring-Format) des ersten beobachteten Pakets während des aggregierten Zeitintervalls.
Basis
end_time string
Zeitstempel (RFC 3339-Datumsstring-Format) des letzten beobachteten Pakets während des aggregierten Zeitintervalls.
Basis
disposition string
Wird nur für Logdatensätze ausgefüllt, in denen Paketverluste erfasst werden. Dieses Feld ist auf DROPPED gesetzt.
Basis
drop_reason String
Wird nur für Logdatensätze mit disposition=DROPPED ausgefüllt. Weitere Informationen finden Sie unter Annotationen zu Paketverlusten und Gründe für Paketverluste.
Basis
bytes_dropped int64
Geschätzte Anzahl der Nutzer-Nutzlast-Bytes, die von der Quelle zum Ziel verloren gegangen sind. Wird nur für Logdatensätze mit disposition=DROPPED ausgefüllt.
Basis
packets_dropped int64
Geschätzte Anzahl der Pakete, die von der Quelle zum Ziel verworfen wurden. Wird nur für Logdatensätze mit disposition=DROPPED ausgefüllt.
Basis
throughput_inclusion String
Wird nur für Logdatensätze mit disposition=DROPPED ausgefüllt. Gibt an, ob der verworfene Traffic in die Felder bytes_sent und packets_sent einbezogen (INCLUDED) oder daraus ausgeschlossen (EXCLUDED) wird, die vom selben Reporter für den Flow gemeldet werden.
Basis
Quell- und Zielmetadatenfelder
src_gateway GatewayDetails
Wenn die Quelle des Flows ein lokaler oder anderer Cloud-Endpunkt ist, der über ein Gateway wie einen VLAN-Anhang für Cloud Interconnect oder einen Cloud VPN-Tunnel mit Google Cloud verbunden ist, und eine der folgenden Bedingungen erfüllt ist, wird dieses Feld mit Gateway-Details gefüllt:
  • Das Quellgateway ist der Berichterstatter des Flusses.
  • Das Ziel des Flows ist der Melder und eine der folgenden Bedingungen ist erfüllt:
    • Das Quell-Gateway befindet sich im selben Projekt wie das Ziel des Flows.
    • VPC-Flusslogs sind auf Organisationsebene konfiguriert und projektübergreifende Annotationen sind nicht deaktiviert.3
Metadaten
dest_gateway GatewayDetails
Wenn das Ziel des Flusses ein lokaler oder anderer Cloud-Endpunkt ist, der über ein Gateway wie einen VLAN-Anhang für Cloud Interconnect oder einen Cloud VPN-Tunnel mit Google Cloud verbunden ist, und eine der folgenden Bedingungen erfüllt ist, wird dieses Feld mit Gateway-Details gefüllt:
  • Das Ziel-Gateway ist der Melder des Flusses.
  • Die Quelle des Flows ist der Berichterstatter und eine der folgenden Bedingungen ist erfüllt:
    • Das Zielgateway befindet sich im selben Projekt wie die Quelle des Flows.
    • VPC-Flusslogs sind auf Organisationsebene konfiguriert und projektübergreifende Annotationen sind nicht deaktiviert.3
Metadaten
src_gke_details GkeDetails
Wenn die Quelle des Flusses ein Google Kubernetes Engine-Endpunkt (GKE) ist, wird dieses Feld mit GKE-Endpunktdetails ausgefüllt.
Metadaten
dest_gke_details GkeDetails
Wenn das Ziel des Flusses ein GKE-Endpunkt ist, wird dieses Feld mit den Details des GKE-Endpunkts ausgefüllt.
Metadaten
src_google_service GoogleServiceDetails
Wenn die Quelle des Datenflusses ein Google-Dienst ist, wird dieses Feld mit Dienstdetails gefüllt.
Metadaten
dest_google_service GoogleServiceDetails
Wenn das Ziel des Datenflusses ein Google-Dienst ist, wird dieses Feld mit Dienstdetails gefüllt.
Metadaten
src_instance InstanceDetails
Wenn die Quelle des Flusses eine VM in einem VPC-Netzwerk ist und eine der folgenden Bedingungen erfüllt ist, wird dieses Feld mit VM-Instanzdetails gefüllt:
  • Die Quell-VM ist der Melder des Flusses.
  • Das Ziel des Flows ist der Melder und eine der folgenden Bedingungen ist erfüllt:
    • Die Quell-VM oder das VPC-Netzwerk, mit dem die Quell-VM verbunden ist, befindet sich im selben Projekt wie das Ziel des Flusses.
    • VPC-Flusslogs sind auf Organisationsebene konfiguriert und projektübergreifende Annotationen sind nicht deaktiviert.3
Metadaten
dest_instance InstanceDetails
Wenn das Ziel des Flusses eine VM in einem VPC-Netzwerk ist und eine der folgenden Bedingungen erfüllt ist, wird dieses Feld mit VM-Instanzdetails gefüllt.
  • Die Ziel-VM ist der Melder des Flusses.
  • Die Quelle des Flows ist der Berichterstatter und eine der folgenden Bedingungen ist erfüllt:
    • Die Ziel-VM oder das VPC-Netzwerk, mit dem die Ziel-VM verbunden ist, befindet sich im selben Projekt wie die Quelle des Flusses.
    • VPC-Flusslogs sind auf Organisationsebene konfiguriert und projektübergreifende Annotationen sind nicht deaktiviert.3
Metadaten
src_location GeographicDetails
Wenn die Quelle des Flusses eine öffentliche IP-Adresse außerhalb des VPC-Netzwerks ist, wird dieses Feld mit verfügbaren Standortmetadaten gefüllt.
Metadaten
dest_location GeographicDetails
Wenn das Ziel des Flusses eine öffentliche IP-Adresse außerhalb des VPC-Netzwerks ist, wird dieses Feld mit verfügbaren Standortmetadaten gefüllt.
Metadaten
src_serverless_details ServerlessDetails
Wenn die Quelle des Flows ein serverloser Endpunkt wie eine Cloud Run-Ressource ist, die mit Direct VPC-Ausgang konfiguriert wurde, wird dieses Feld mit serverlosen Metadaten gefüllt.
Metadaten
dest_serverless_details ServerlessDetails
Wenn das Ziel des Flows ein serverloser Endpunkt wie eine Cloud Run-Ressource ist, die mit Direct VPC-Ausgang konfiguriert wurde, wird dieses Feld mit serverlosen Metadaten gefüllt.
Metadaten
src_vpc VpcDetails
Wenn die Quelle des Flusses eine VM oder ein serverloser Endpunkt in einem VPC-Netzwerk ist und eine der folgenden Bedingungen erfüllt ist, wird dieses Feld mit VPC-Netzwerkdetails gefüllt:
  • Die Quellressource ist der Berichterstatter des Flusses.
  • Das Ziel des Flows ist der Berichtersteller und eine der folgenden Bedingungen ist erfüllt:
    • Die Quellressource oder das VPC-Netzwerk, mit dem die Quellressource verbunden ist, befindet sich im selben Projekt wie das Ziel des Flusses.
    • VPC-Flusslogs sind auf Organisationsebene konfiguriert und projektübergreifende Annotationen sind nicht deaktiviert.3
Metadaten
dest_vpc VpcDetails
Wenn das Ziel des Flusses eine VM oder ein serverloser Endpunkt in einem VPC-Netzwerk ist und eine der folgenden Bedingungen erfüllt ist, wird dieses Feld mit VPC-Netzwerkdetails gefüllt:
  • Die Zielressource ist der Melder des Flusses.
  • Die Quelle des Flows ist der Berichterstatter und eine der folgenden Bedingungen ist erfüllt:
    • Die Zielressource oder das VPC-Netzwerk, mit dem die Zielressource verbunden ist, befindet sich im selben Projekt wie die Quelle des Flusses.
    • VPC-Flusslogs sind auf Organisationsebene konfiguriert und projektübergreifende Annotationen sind nicht deaktiviert.3
Metadaten
Andere Metadatenfelder
internet_routing_details InternetRoutingDetails
Wenn der Fluss zwischen Google Cloud und dem Internet besteht, wird dieses Feld mit Routingdetails gefüllt. Nur verfügbar für ausgehende Datenflüsse.
Metadaten
load_balancing LoadBalancingDetails
Wenn der Datenfluss einen Load Balancer in einer der folgenden Konfigurationen passiert, werden in dieses Feld Cloud Load Balancing-Details eingefügt:
  • Der Melder des Flusses ist der Client des Load Balancers und der Load Balancer-Typ ist APPLICATION_LOAD_BALANCER, PROXY_NETWORK_LOAD_BALANCER, PASSTHROUGH_NETWORK_LOAD_BALANCER oder PROTOCOL_FORWARDING.
  • Der Melder des Flusses ist das Backend des Load Balancers und der Load Balancer-Typ ist PASSTHROUGH_NETWORK_LOAD_BALANCER oder PROTOCOL_FORWARDING.
Metadaten
network_service NetworkServiceDetails
Wenn der DSCP-Header (Differentiated Services Code Point) festgelegt ist, wird dieses Feld mit Netzwerkdienstdetails gefüllt.
Metadaten
psc PrivateServiceConnectDetails
Wenn der Fluss mit einer Private Service Connect-Verbindung verknüpft ist, einschließlich einer über das Network Connectivity Center weitergegebenen Verbindung, und eine der folgenden Bedingungen erfüllt ist, wird dieses Feld mit Private Service Connect-Details gefüllt:
  • Der Melder des Flows ist ein Verbraucher und verwendet einen Private Service Connect-Endpunkt, der auf einen veröffentlichten Dienst oder globale Google APIs ausgerichtet ist.
  • Der Melder des Flows ist ein Ersteller und verwendet einen internen Passthrough-Network Load Balancer oder eine interne Protokollweiterleitung.
Metadaten
rdma_traffic_type string
Typ des RDMA-Traffics. Wird für GPU-zu-GPU-Traffic zwischen VMs ausgefüllt. Kann GPUDirect-TCPXO, Falcon oder RoCE sein.
Metadaten
1 Geschätzte Gesamtsumme basierend auf Stichprobenpaketen. Um die Genauigkeit zu maximieren, sollten Sie Logs über längere Zeiträume oder mehrere Ressourcen hinweg zusammenfassen. Weitere Informationen zur Genauigkeit und Stichprobenerhebung finden Sie unter VPC-Flusslogs: Byte- und Paketanzahl verstehen und Logprobenahme und Logverarbeitung.
2 Bei Falcon-Traffic wird der Wert für gesendete Byte für Quelle und Ziel unterschiedlich berechnet:
  • Wenn die Quell-VM der Melder ist, ist der gemeldete Bytewert die Summe der gesendeten Nutzlast-Bytes und Paketheader-Bytes. Dieser Wert ist immer größer als null, auch für Pakete, die keine Nutzlast enthalten.
  • Wenn die Ziel-VM der Melder ist, entspricht der Wert für die gemeldeten Bytes den empfangenen und an die Anwendungsschicht weitergeleiteten Nutzlastbytes. Bei Paketen ohne Nutzer-Nutzlast ist der Byte-Wert null.
3 Wenn VPC-Flusslogs auf Organisationsebene konfiguriert sind, enthalten Logeinträge für projektübergreifende Flüsse standardmäßig Details zu beiden Seiten des Flusses. Projektübergreifende Annotationen sind für Flows über freigegebene VPC, VPC-Netzwerk-Peering und Network Connectivity Center verfügbar. Weitere Informationen finden Sie unter Projektübergreifende Annotationen.

Feldformat von GatewayDetails

Feld Typ Beschreibung
project_id String Google Cloud Projekt-ID des Gateways
Standort String Region des Gateways
Name String Name des Gateways
Typ String Typ des Gateways. Kann INTERCONNECT_ATTACHMENT oder VPN_TUNNEL sein.
vpc VpcDetails VPC-Netzwerkdetails des Gateways
interconnect_name String Wenn der Typ des Gateways INTERCONNECT_ATTACHMENT ist, enthält dieses Feld den Namen der Cloud Interconnect-Verbindung, für die der VLAN-Anhang konfiguriert ist.
interconnect_project_number int64 Wenn der Typ des Gateways INTERCONNECT_ATTACHMENT ist, enthält dieses Feld die Google Cloud Projektnummer der Cloud Interconnect-Verbindung, für die der VLAN-Anhang konfiguriert ist.

Feldformat von GeographicDetails

Feld Typ Beschreibung
asn int32 Die ASN des externen Netzwerks, zu dem der Endpunkt gehört.
Ort String Stadt für externe Endpunkte
continent String Kontinent für externe Endpunkte
Land String Land für externe Endpunkte, dargestellt als Ländercodes gemäß ISO 3166-1 Alpha-3.
Region String Region für externe Endpunkte

Feldformat von GkeDetails

Feld Typ Beschreibung
Cluster Clusterdetails GKE-Clustermetadaten.
Pod PodDetails GKE-Pod-Metadaten, die ausgefüllt werden, wenn die Quelle oder das Ziel des Traffics ein Pod ist.
service ServiceDetails GKE-Dienstmetadaten, die nur in Dienstendpunkten ausgefüllt werden. Der Eintrag enthält bis zu zwei Dienste. Wenn mehr als zwei relevante Dienste vorhanden sind, enthält dieses Feld einen einzelnen Dienst mit einer speziellen MANY_SERVICES-Markierung.

Feldformat von ClusterDetails

Feld Typ Beschreibung
cluster_location String Speicherort des Clusters. Dies kann eine Zone oder Region sein, je nachdem, ob der Cluster zonal oder regional ist.
cluster_name String Name des GKE-Clusters.

Feldformat von PodDetails

Feld Typ Beschreibung
pod_name String Name des Pods.
pod_namespace String Namespace des Pods.
Arbeitslast WorkloadDetails Metadaten zur Arbeitslastressource der obersten Ebene, die den Pod steuert
Feldformat von WorkloadDetails
Feld Typ Beschreibung
workload_name String Name des Arbeitslastkontrollers auf oberster Ebene
workload_type String Typ des Arbeitslast-Controllers der obersten Ebene. Kann DEPLOYMENT, REPLICA_SET, STATEFUL_SET, DAEMON_SET, JOB, CRON_JOB oder REPLICATION_CONTROLLER sein.

Feldformat von ServiceDetails

Feld Typ Beschreibung
service_name String Name des Dienstes, Wenn mehr als zwei relevante Dienste vorhanden sind, wird das Feld auf eine spezielle MANY_SERVICES-Markierung gesetzt.
service_namespace String Namespace des Dienstes.

Beispiel:

Wenn zwei Dienste vorhanden sind, sieht das Dienstfeld so aus:

service: [
 0: {
  service_name: "my-lb-service"
  service_namespace: "default"
 }
 1: {
  service_name: "my-lb-service2"
  service_namespace: "default"
 }
]

Wenn mehr als zwei Dienste vorhanden sind, sieht das Dienstfeld so aus:

service: [
 0: {
  service_name: "MANY_SERVICES"
 }
]

Feldformat von GoogleServiceDetails

Feld Typ Beschreibung
Typ String

Die Art des Dienstes, entweder GOOGLE_API oder GOOGLE_VPC_HOSTED_SERVICE:

service_name String

Name des Dienstes. Beispiel: pubsub.googleapis.com.

Einschränkungen:

  • Der Dienstname fehlt möglicherweise bei Anfragen an Google-APIs, die länger als 60 Sekunden dauern.
  • Wenn eine VM oder ein Gateway dasselbe 5‑Tupel verwendet, um eine Verbindung zu mehreren Diensten herzustellen, enthält der Logeintrag den Namen nur eines der Dienste, der zufällig ausgewählt wird.
Verbindung String

Zugriffsmethode. Für den Typ GOOGLE_API kann das Feld „Verbindung“ einen der folgenden Werte haben:

  • PUBLIC_IP, wenn auf die API über eine VM mit einer externen IP-Adresse zugegriffen wird
  • PRIVATE_GOOGLE_ACCESS oder DIRECT_CONNECTIVITY, wenn über den privater Google-Zugriff auf die API zugegriffen wird
  • PRIVATE_SERVICE_CONNECT_FOR_GOOGLE_APIS, wenn über Private Service Connect-Endpunkte auf die API zugegriffen wird

Für den Typ GOOGLE_VPC_HOSTED_SERVICE kann das Feld „Verbindung“ einen der folgenden Werte haben:

  • PUBLIC_IP, wenn auf den Dienst über eine öffentliche IP-Verbindung zugegriffen wird
  • PRIVATE_SERVICES_ACCESS, wenn auf den Dienst über den Zugriff auf private Dienste zugegriffen wird
  • PRIVATE_SERVICE_CONNECT_ENDPOINT oder PRIVATE_SERVICE_CONNECT_INTERFACE, wenn auf den Dienst über Private Service Connect zugegriffen wird
private_domain String

Private Domain oder Private Service Connect API-Bundle. Das Feld „private_domain“ kann einen der folgenden Werte haben:

  • Für die Zugriffsmethode PRIVATE_GOOGLE_ACCESS: private.googleapis.com oder restricted.googleapis.com
  • Für die Zugriffsmethode DIRECT_CONNECTIVITY: restricted.googleapis.com
  • Für die Zugriffsmethode PRIVATE_SERVICE_CONNECT_FOR_GOOGLE_APIS: all-apis oder vpc-sc

Feldformat von InstanceDetails

Feld Typ Beschreibung
project_id String ID des Google Cloud -Projekts, das die VM-Ressource enthält
Region String Region der VM
vm_name String Instanzname der VM
Zone String Zone der VM
managed_instance_group InstanceGroupDetails Wenn die VM Teil einer verwalteten Instanzgruppe ist, enthält dieses Feld Details zur Instanzgruppe.

Feldformat von InstanceGroupDetails

Feld Typ Beschreibung
Name String Name der Instanzgruppe
Region String Wenn es sich um eine regionale Instanzgruppe handelt, enthält dieses Feld die Region der Instanzgruppe.
Zone String Wenn die Instanzgruppe zonal ist, wird dieses Feld mit der Zone der Instanzgruppe ausgefüllt.

Feldformat von InternetRoutingDetails

Feld Typ Beschreibung
egress_as_path AsPath Liste der relevanten AS-Pfade. Wenn mehrere AS-Pfade für den Fluss verfügbar sind, kann das Feld mehr als einen AS-Pfad enthalten.

Feldformat von AsPath

Feld Typ Beschreibung
as_details AsDetails Liste der AS-Details für alle Systeme im AS-Pfad. Die Liste beginnt mit dem ersten AS außerhalb des Netzwerks von Google Cloudund endet mit dem AS, zu dem die Remote-IP-Adresse gehört.

Feldformat von AsDetails

Feld Typ Beschreibung
asn uint32 Die autonome Systemnummer (Autonomous System Number, ASN) des AS

Feldformat von IpConnection

Feld Typ Beschreibung
src_ip String IP-Adresse der Quelle. Wird für alle Abläufe ausgefüllt.
dest_ip String IP-Adresse des Ziels. Wird für alle Abläufe ausgefüllt.
src_port int32 Quellport:
  • Wird für TCP- und UDP-Flows ausgefüllt.
  • Für ICMP-, ESP-, GRE- und RDMA-Flows nicht ausgefüllt
dest_port int32 Zielport:
  • Wird für TCP- und UDP-Flows ausgefüllt.
  • Für ICMP-, ESP-, GRE- und RDMA-Flows nicht ausgefüllt
Protokoll int32 Die IANA-Protokollnummer:
  • Wird für TCP-, UDP-, ICMP-, ESP- und GRE-Flüsse ausgefüllt.
  • Für RDMA-Abläufe nicht ausgefüllt

Feldformat für Latenzen

Feld Typ Beschreibung
median_msec double Der Medianwert für die Latenz in Millisekunden, gemessen während des Aggregationsintervalls.

Feldformat von LoadBalancingDetails

Feld Typ Beschreibung
forwarding_rule_project_id String Google Cloud Projekt-ID der Weiterleitungsregel
reporter String Cloud Load Balancing-Melder Kann entweder CLIENT oder BACKEND sein.
  • Wenn der Melder des Datenflusses der Client des Load Balancers ist, wird dieses Feld auf CLIENT gesetzt.
  • Wenn der Melder des Datenflusses das Backend des Load Balancers ist, wird dieses Feld auf BACKEND gesetzt.
Typ String Load-Balancer-Typ. Kann APPLICATION_LOAD_BALANCER, PROXY_NETWORK_LOAD_BALANCER, PASSTHROUGH_NETWORK_LOAD_BALANCER, oder PROTOCOL_FORWARDING sein.
scheme String Load-Balancer-Schema. Kann EXTERNAL_MANAGED, INTERNAL_MANAGED, EXTERNAL, INTERNAL oder INTERNAL_SELF_MANAGED sein.
url_map_name String Name der URL-Zuordnung. Wird ausgefüllt, wenn der Typ des Load Balancers APPLICATION_LOAD_BALANCER ist.
forwarding_rule_name String Name der Weiterleitungsregel
backend_service_name String Name des Backend-Dienstes. Wird ausgefüllt, wenn BACKEND der Melder und PASSTHROUGH_NETWORK_LOAD_BALANCER der Load Balancer-Typ ist. Wenn der Backend-Gruppentyp TARGET_POOL ist, wird dieses Feld nicht ausgefüllt.
backend_service_project_id String Projekt-ID des Backend-Dienstes. Wird ausgefüllt, wenn der Melder BACKEND und der Load Balancer-Typ PASSTHROUGH_NETWORK_LOAD_BALANCER ist. Wenn der Backend-Gruppentyp TARGET_POOL ist, wird dieses Feld nicht ausgefüllt.
backend_group_name String Name der Backend-Gruppe. Wird ausgefüllt, wenn BACKEND der Melder und PASSTHROUGH_NETWORK_LOAD_BALANCER der Load Balancer-Typ ist.
backend_group_type String Typ der Backend-Gruppe. Kann INSTANCE_GROUP, NETWORK_ENDPOINT_GROUP oder TARGET_POOL sein. Wird ausgefüllt, wenn der Melder BACKEND und der Load Balancer-Typ PASSTHROUGH_NETWORK_LOAD_BALANCER ist.
backend_group_location String Speicherort der Backend-Gruppe. Kann eine Zone oder Region sein, je nachdem, ob der Umfang der Backend-Gruppe zonal oder regional ist. Wird ausgefüllt, wenn der Melder BACKEND und der Load Balancer-Typ PASSTHROUGH_NETWORK_LOAD_BALANCER ist. Wenn der Backend-Gruppentyp TARGET_POOL ist, wird dieses Feld nicht ausgefüllt.
vpc VpcDetails VPC-Netzwerkdetails des Load Balancers

Feldformat von NetworkServiceDetails

Feld Typ Beschreibung
dscp int32 Wenn in Paketheadern das Feld „Differentiated Services“ vorhanden ist, wird der DSCP-Wert automatisch eingefügt.

Gründe für Paketverluste

In der folgenden Tabelle werden die unterstützten Werte des Felds drop_reason beschrieben, wenn sie von SRC oder SRC_GATEWAY gemeldet werden.

Löschgrund Beschreibung
FIREWALL_DENY

Ausgehender Traffic wurde verworfen, weil eine Firewallregel für ausgehenden Traffic ausgewertet wurde und ihre Aktion deny war.

Empfehlung: Wenn Sie diesen Traffic zulassen möchten, passen Sie Ihre Firewallregeln an.

NO_MATCHING_ROUTE

Ausgehender Traffic wurde verworfen, da keine übereinstimmende Route für das Ziel vorhanden war.

Empfehlung: Überprüfen Sie die Routen in Ihrem VPC-Netzwerk im Bereich „Aktive Routen“ der Google Cloud -Konsole. Sie können auch Konnektivitätstests erstellen und ausführen.

QUEUE_OVERFLOW

Ausgehender Traffic wurde verworfen, weil die Paketverarbeitungssoftware des Hosts die CPU-Kapazität überschritten hat.

Empfehlung: Wenn die Paketverluste dauerhaft auftreten, sollten Sie VMs mit höherer Bandbreite (Tier_1) verwenden oder den Traffic auf mehr VMs verteilen.

SPOOFED_SOURCE

Ausgehender Traffic wurde verworfen, da die Quelle des Pakets nicht der VM-Netzwerkschnittstelle zugeordnet war und die IP-Weiterleitung deaktiviert ist.

Empfehlung: Wenn Sie Pakete mit beliebigen Quellen von einer VM-Netzwerkschnittstelle an Ziele senden möchten, die innerhalb eines VPC-Netzwerk geroutet werden können, müssen Sie die IP-Weiterleitung für die VM aktivieren.

TOO_MANY_CONNECTIONS

Ausgehender Traffic wurde verworfen, weil die Software zur Paketverarbeitung des Hosts die Flussrate nicht verarbeiten konnte.

Empfehlung: Erwägen Sie, eine andere Maschinenserie zu verwenden, die für eine größere Anzahl von Verbindungen ausgelegt ist, oder Ihre Arbeitslast auf mehr VMs zu verteilen.

In der folgenden Tabelle werden die unterstützten Werte des Felds drop_reason beschrieben, wenn sie von DEST oder DEST_GATEWAY gemeldet werden.

Löschgrund Beschreibung
EARLY_DROPS_FULL_FAIR_QUEUE

Eingehender Traffic wurde verworfen, weil die Software zur Paketverarbeitung des Hosts die Ressourcengerechtigkeit erzwungen hat. Dieses Verhalten betrifft in der Regel nur die Maschinenreihen der 1. Generation.

Empfehlung: Wenn die Leistungseinbrüche anhalten, sollten Sie eine Migration zu einer neueren oder leistungsstärkeren Maschinenfamilie in Betracht ziehen.

FIREWALL_DENY

Eingehender Traffic wurde verworfen, weil eine Firewallregel für eingehenden Traffic ausgewertet wurde und ihre Aktion deny war.

Empfehlung: Wenn Sie diesen Traffic zulassen möchten, passen Sie Ihre Firewallregeln an.

INVALID_L4_CHECKSUM_INTERNET

Eingehender Traffic wurde verworfen, weil eine Prüfsummenabweichung erkannt wurde. Die Pakete wurden von einer Quelle außerhalb des VPC-Netzwerk an eine externe Ziel-IP-Adresse gesendet, die der VM-Reporter-Instanz zugeordnet ist. Weitere Informationen finden Sie unter Eingehender Traffic zu Zielen außerhalb eines VPC-Netzwerks.

Empfehlung: Wenn die Unterbrechungen weiterhin auftreten, untersuchen Sie die Quelle oder den Netzwerkpfad.

INVALID_L4_CHECKSUM_INTERNAL

Eingehender Traffic wurde verworfen, weil eine Prüfsummenabweichung erkannt wurde. Die Pakete wurden im VPC-Netzwerk an eine Ziel-IP-Adresse weitergeleitet, die mit der VM-Reporter-Instanz verknüpft ist. Weitere Informationen finden Sie unter Eingehender Traffic zu Zielen in einem VPC-Netzwerk.

Empfehlung: Wenn die Unterbrechungen weiterhin auftreten, untersuchen Sie die Quelle oder den Netzwerkpfad.

PSC_NAT_OUT_OF_CONNECTIONS

Eingehender Traffic wurde verworfen, weil der Private Service Connect-Endpunkt die maximale Anzahl gleichzeitiger Verbindungen für den Nutzer erreicht hat.

Empfehlung: Bitten Sie den Nutzer, die Rate neuer Verbindungen zu diesem Private Service Connect-Endpunkt zu reduzieren oder die Verbindungen zu diesem Private Service Connect-Endpunkt auf mehr Client-VMs zu verteilen.

PSC_NAT_OUT_OF_PORTS

Eingehender Traffic von einem Private Service Connect-Nutzer wurde verworfen, weil die Private Service Connect-NAT-Ports erschöpft waren.

Empfehlung: Überprüfen Sie die Größe Ihres NAT-Subnetzes.

QUEUE_OVERFLOW

Eingehender Traffic wurde verworfen, weil die Software zur Paketverarbeitung des Hosts die CPU-Kapazität überschritten hat.

Empfehlung: Wenn die Paketverluste dauerhaft auftreten, sollten Sie VMs mit höherer Bandbreite (Tier_1) verwenden oder den Traffic auf mehr VMs verteilen.

TOO_MANY_CONNECTIONS

Eingehender Traffic wurde verworfen, weil die Software zur Paketverarbeitung des Hosts die Flussrate nicht verarbeiten konnte.

Empfehlung: Wenn die hohe Flussrate auf eine hohe Nebenläufigkeit der Verbindungen oder einen hohen Umsatz auf VM-Ebene zurückzuführen ist, sollten Sie die Rate neuer Verbindungen zur VM reduzieren.

Feldformat von PrivateServiceConnectDetails

Feld Typ Beschreibung
reporter String Private Service Connect-Melder. Kann entweder CONSUMER oder PRODUCER sein.
psc_endpoint PrivateServiceConnectEndpointDetails Endpunktdetails. Wird ausgefüllt, wenn der Melder CONSUMER ist.
psc_attachment PrivateServiceConnectAttachmentDetails Details zum Dienstanhang. Wird ausgefüllt, wenn der Traffic-Flow einen Private Service Connect-Ersteller enthält.

Feldformat von PrivateServiceConnectEndpointDetails

Feld Typ Beschreibung
project_id String Google Cloud Projekt-ID des Private Service Connect-Endpunkts
Region String Region des Endpunkts. Wird nicht ausgefüllt, wenn der Zieldiensttyp GLOBAL_GOOGLE_APIS ist.
psc_connection_id String Private Service Connect-Verbindungs-ID
target_service_type String Typ des Zieldienstes.. Kann entweder GLOBAL_GOOGLE_APIS oder PUBLISHED_SERVICE sein.
vpc VpcDetails VPC-Netzwerkdetails des Private Service Connect-Endpunkts

Feldformat von PrivateServiceConnectAttachmentDetails

Feld Typ Beschreibung
project_id String Google Cloud Projekt-ID des Dienstanhangs
Region String Region des Dienstanhangs
vpc VpcDetails VPC-Netzwerkdetails des Dienst-Anhangs

Feldformat von ServerlessDetails

Feld Typ Beschreibung
project_id String ID des Google Cloud -Projekts, das die Cloud Run-Ressource enthält. In einer freigegebene VPC-Konfiguration ist die Projekt-ID normalerweise die ID des Dienstprojekts.
Region String Region der Cloud Run-Ressource

Eines der folgenden Betriebssysteme:

  • cloud_run_service_details
  • cloud_run_job_details
  • cloud_run_worker_pool_details

Eines der folgenden Betriebssysteme:

Name der Cloud Run-Ressource

Feldformat von CloudRunServiceDetails

Feld Typ Beschreibung
service_name String Name des Cloud Run-Dienstes

Feldformat von CloudRunJobDetails

Feld Typ Beschreibung
job_name String Name des Cloud Run-Jobs

Feldformat von CloudRunWorkerPoolDetails

Feld Typ Beschreibung
worker_pool_name String Name des Cloud Run-Worker-Pools

Feldformat von VpcDetails

Feld Typ Beschreibung
project_id String ID des Google Cloud -Projekts, das die VPC enthält. In einer freigegebene VPC-Konfiguration ist die Projekt-ID die ID des Hostprojekts.
subnetwork_name String Name des Subnetzes, falls zutreffend
subnetwork_region String Region des Subnetzes, falls zutreffend
vpc_name String Name des Netzwerks

Metadatenannotationen

Logdatensätze umfassen Basisfelder und Metadatenfelder. Unter Eintragsformat wird angezeigt, welche Felder vom Typ Metadaten sind und welche Typ Basis sind. Die Basisfelder sind immer enthalten. Sie können festlegen, welche Metadatenfelder beibehalten werden.

  • Wenn Sie alle Metadaten auswählen, sind alle Metadatenfelder im Eintragsformat für VPC-Flusslogs enthalten. Wenn dem Eintragsformat neue Metadatenfelder hinzugefügt werden, enthalten die Flusslogs automatisch die neuen Felder.

  • Wenn Sie keine Metadaten auswählen, werden alle Metadatenfelder weggelassen.

  • Wenn Sie benutzerdefinierte Metadaten auswählen, können Sie die Metadatenfelder, die Sie vom übergeordneten Feld einschließen möchten, angeben, z. B. src_vpc, oder ihren vollständigen Namen angeben, z. B. src_vpc.project_id.

    Wenn dem Eintragsformat neue Metadatenfelder hinzugefügt werden, werden sie aus den Flusslogs ausgeschlossen, sofern sie sich nicht in einem übergeordneten Feld befinden, das Sie angegeben haben.

    • Wenn Sie benutzerdefinierte Metadaten mithilfe von übergeordneten Feldern festlegen, werden den neuen Audit-Logs automatisch die neuen Felder hinzugefügt, wenn dem Eintragsformat in dem übergeordneten Feld neue Metadatenfelder hinzugefügt werden.

    • Wenn Sie benutzerdefinierte Metadaten mit dem vollständigen Namen des Felds angeben, werden neue Metadatenfelder, die dem übergeordneten Feld hinzugefügt werden, aus den Flusslogs ausgeschlossen.

Informationen zum Anpassen von Metadatenfeldern finden Sie unter VPC-Flusslogs aktivieren oder Konfiguration von VPC-Flusslogs aktualisieren.

Projektübergreifende Annotationen

Wenn VPC-Flusslogs auf Organisationsebene aktiviert sind, werden Datenflüsse über die freigegebene VPC, das VPC-Netzwerk-Peering und das Network Connectivity Center mit projektübergreifenden Anmerkungen versehen. Projektübergreifende Annotationen sind standardmäßig aktiviert. Sie können diese Annotationen optional deaktivieren.

  • Wenn projektübergreifende Anmerkungen aktiviert sind, enthalten Logeinträge für Flows zwischen Ressourcen in verschiedenen Projekten Informationen zu beiden Seiten des Flows.
  • Wenn projektübergreifende Annotationen deaktiviert sind, enthalten Log-Einträge nur Informationen zum Reporter des Ablaufs.

Wenn VPC-Fluss-Logs auf Projektebene aktiviert sind, werden Flüsse zwischen Ressourcen in verschiedenen Projekten nicht mit projektübergreifenden Annotationen versehen.

GKE-Annotationen

Flüsse, die einen Endpunkt in einem GKE-Cluster haben, können mit GKE-Annotationen annotiert werden. Diese können Details zum Cluster, Pod und Dienst des Endpunkts enthalten.

GKE-Dienstannotationen

Traffic, der an einen ClusterIP, NodePort oder LoadBalancer gesendet wird, kann Dienstannotationen empfangen. Wenn er an einen NodePort oder LoadBalancer gesendet wird, empfängt der Fluss die Dienstannotation in beiden Hops der Verbindung.

Traffic, der direkt an den Dienstport eines Pods gesendet wird, wird mit einer Dienstannotation am Zielendpunkt annotiert.

Traffic, der an den Dienstport eines Pods gesendet wird, der mehr als einen Dienst am selben Dienstport unterstützt, wird mit mehreren Diensten am Zielendpunkt annotiert. Dies ist auf zwei Dienste beschränkt. Wenn mehr Dienste vorhanden sind, wird der Endpunkt mit einer speziellen MANY_SERVICES-Markierung versehen.

Pod-Annotationen zu Internettraffic

Der Traffic zwischen einem Pod und dem Internet erhält standardmäßig keine Pod-Annotationen. VPC-Flusslogs können keine Pod-Annotationen hinzufügen, da der Masquerade-Agent bei Paketen im Internet die Pod-IP-Adresse in die Knoten-IP-Adresse übersetzt, bevor VPC-Flusslogs das Paket sehen.

Aufgrund der Masquerade sind Pod-Annotationen nur sichtbar, wenn sich die Ziele entweder innerhalb der Standardziele ohne Masquerade oder in einer benutzerdefinierten nonMasqueradeCIDRs-Liste befinden. Wenn Sie Internetziele in eine benutzerdefinierte nonMasqueradeCIDRs-Liste aufnehmen, müssen Sie eine Möglichkeit bereitstellen, damit die internen Pod-IP-Adressen übersetzt werden können, bevor sie im Internet bereitgestellt werden. Für private und nicht private Cluster können Sie Cloud NAT verwenden. Weitere Informationen finden Sie unter GKE-Interaktion.

Einträge für verworfenen Traffic

Mit VPC-Flusslogs werden Logeinträge für verworfenen Traffic generiert. Logdatensätze für verworfenen Traffic werden separat von Standardlogdatensätzen generiert. Paketverluste werden nach Fluss und Grund für den Verlust zusammengefasst. Innerhalb eines Aggregationsintervalls werden Paketverluste mit demselben Grund in einem einzigen Log-Datensatz zusammengefasst. Für jeden eindeutigen Grund für den Verlust wird ein separater Log-Datensatz generiert.

Ausgehende Drops werden von der Quelle (SRC oder SRC_GATEWAY) und eingehende Drops vom Ziel (DEST oder DEST_GATEWAY) gemeldet. Wenn VPC-Flusslogs sowohl für die Quelle als auch für das Ziel aktiviert sind, gilt Folgendes:

  • Ausgehender Traffic wird unterbrochen: Wenn ein Drop auf der Quellseite auftritt, werden sowohl ein Standard-Log-Eintrag als auch ein Log-Eintrag mit dem Grund für den Drop für die Quelle generiert. Für das Ziel wird kein Logeintrag generiert, da der Traffic nie an das Ziel gesendet wurde.
  • Ingress-Drops: Wenn ein Drop auf der Zielseite auftritt, werden Logdatensätze sowohl für die Quelle als auch für das Ziel generiert. Für die Quelle wird ein Standard-Logeintrag generiert. Für das Ziel wird nur ein Logeintrag mit dem Grund für den Drop generiert.

Logeinträge für verworfenen Traffic enthalten die Felder disposition, drop_reason, bytes_dropped, packets_dropped und throughput_inclusion.

Eine Liste der Gründe für Paketverluste, die erfasst werden, finden Sie unter Gründe für Paketverluste.

Logfilterung

Wenn Sie VPC-Flusslogs aktivieren, können Sie einen Filter anhand von Basis- und Metadatenfeldern festlegen, die nur Logs beibehalten, die dem Filter entsprechen. Alle anderen Logs werden verworfen, bevor sie in Logging geschrieben werden.

Sie können nach einer beliebigen Teilmenge von Feldern filtern, die im Eintragsformat aufgeführt sind, mit Ausnahme der folgenden Felder:

  • rtt_msec
  • bytes_sent
  • packets_sent
  • start_time
  • end_time

Bei der VPC-Flusslog-Filterung wird CEL verwendet, eine eingebettete Ausdruckssprache für attributbasierte logische Ausdrücke. Filterausdrücke für VPC-Flusslogs sind auf 2.048 Zeichen begrenzt. Weitere Informationen finden Sie unter Unterstützte CEL-Operatoren.

Weitere Informationen zu CEL finden Sie in der CEL-Einführung und in der Sprachdefinition. Das Generierungsfilter-Feature unterstützt eine begrenzte Teilmenge der CEL-Syntax.

Informationen zum Erstellen einer VPC-Flusslogkonfiguration mit Logfilterung finden Sie unter VPC-Flusslogs aktivieren. Informationen zum Konfigurieren der Logfilterung für eine vorhandene VPC-Flusslogkonfiguration finden Sie unter Konfiguration von VPC-Flusslogs aktualisieren. Beispiele für Logfilter finden Sie unter Beispiele für Logfilter.

Unterstützte logische CEL-Operatoren

Ausdruck Unterstützte Typen Beschreibung
true, false boolean Boolesche Konstanten

x == y

x != y

boolean, int, string

Vergleichsoperator

Beispiel: connection.protocol == 6

x && y

x || y

boolean

Boolesche logische Operatoren

Beispiel: connection.protocol == 6 && src_instance.vm_name == "vm_1"

!x boolean Negation
1, 2.0, 0, ... int Konstante numerische Literale
x + y String String-Verkettung
"foo", 'foo', ... String Konstantes Stringliteral
x.lower() String Gibt den Kleinbuchstabenwert des Strings zurück
x.upper() String Gibt den Großbuchstabenwert des Strings zurück
x.contains(y) String Gibt "true" zurück, wenn der String den angegebenen Teilstring enthält
x.startsWith(y) String Gibt "true" zurück, wenn der String mit dem angegebenen Teilstring beginnt.
x.endsWith(y) String Gibt "true" zurück, wenn der String mit dem angegebenen Teilstring endet.
inIpRange(X, Y) String

Gibt "true" zurück, wenn X eine IP-Adresse und Y ein IP-Bereich ist, der X enthält.

Example: inIpRange("1.2.3.1", "1.2.3.0/24")

x.containsFieldValue(y) x: list
y: map(string, string)

Gibt "true" zurück, wenn die Liste ein Objekt mit Feldern enthält, die mit den angegebenen Schlüssel/Wert-Paaren übereinstimmen.

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

has(x) String

Gibt „true“ zurück, wenn das Feld vorhanden ist.

App Hub-Labels

Für Google Cloud Ressourcen, die als App Hub-Arbeitslasten oder -Dienste registriert sind, enthalten Logdatensätze anwendungsspezifische Labels. VPC-Flusslogs enthalten diese Labels für Traffic, der den folgenden Ressourcen zugeordnet ist:

  • Von Compute Engine verwaltete Instanzgruppen
  • GKE-Pods (die Arbeitslasttypen CRON_JOB, DAEMON_SET, DEPLOYMENT und STATEFUL_SET)
  • Cloud Run-Dienste und ‑Jobs, die mit ausgehendem Direct VPC-Traffic konfiguriert sind
  • Weiterleitungsregeln

App Hub-Labels werden gegebenenfalls an maximal eine Quellressource und eine Zielressource pro Logeintrag angehängt. Bei Weiterleitungsregeln wird durch die Felder CLIENT und BACKEND bestimmt, ob die Weiterleitungsregel die Quell- oder die Zielressource ist.

App Hub-Labels unterscheiden sich von Metadatenanmerkungen für VPC-Flusslogs. Metadaten und Logfiltereinstellungen für VPC-Flusslogs gelten nicht für diese Labels.

Nächste Schritte