Accedi ai log di flusso

Questa pagina descrive come accedere ai log di flusso utilizzando Cloud Logging.

Accedere ai log di flusso in Esplora log

Puoi visualizzare i log di flusso VPC utilizzando Esplora log. In Esplora log, puoi utilizzare query e filtri delle risorse per visualizzare i log di flusso.

Configura IAM

Per configurare controllo dell'accesso per il logging, consulta la guida al controllo dell'accesso per Logging.

Accedi ai log di flusso utilizzando i filtri delle risorse

Per visualizzare tutti i log di flusso o i log di flusso per una subnet specifica, consulta le sezioni seguenti. Puoi visualizzare questi log anche utilizzando le query di Esplora log, come descritto in Accedere ai log di flusso utilizzando le query.

Accedi a tutti i log di flusso

Console

  1. Nella console Google Cloud, vai alla pagina Esplora log.

    Vai a Esplora log

  2. Fai clic su Tutte le risorse.

  3. Nell'elenco Seleziona risorsa, fai clic su Subnet, quindi su Applica.

  4. Fai clic su Nome log.

  5. Nell'elenco Seleziona nomi log, fai clic su vpc_flows e quindi su Applica.

Accedi ai log di flusso per una subnet specifica

Console

  1. Nella console Google Cloud, vai alla pagina Esplora log.

    Vai a Esplora log

  2. Fai clic su Tutte le risorse.

  3. Nell'elenco Seleziona risorsa, fai clic su Subnet.

  4. Nell'elenco ID subnet, seleziona la subnet e fai clic su Applica.

  5. Nell'elenco Seleziona nomi log, fai clic su vpc_flows e quindi su Applica.

Accedi ai log di flusso utilizzando le query

Console

  1. Nella console Google Cloud, vai alla pagina Esplora log.

    Vai a Esplora log

  2. Se non vedi il campo Editor query nel riquadro Query, fai clic sull'opzione di attivazione/disattivazione Mostra query.

  3. Inserisci una query nel campo dell'editor di query. Ad esempio, per visualizzare i log di flusso per una subnet specifica, inserisci la seguente query, sostituendo PROJECT_ID con il tuo ID progetto e SUBNET_NAME con la tua subnet:

    resource.type="gce_subnetwork"
    logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows"
    resource.labels.subnetwork_name="SUBNET_NAME"
    

    Per ulteriori esempi di query che puoi eseguire per visualizzare i log di flusso, consulta Esempi di query di esplorazione log per i log di flusso VPC.

  4. Fai clic su Esegui query.

Esempi di query di Esplora log per i log di flusso VPC

La tabella seguente fornisce esempi di query di Esplora log che puoi eseguire per visualizzare i log di flusso.

Log da visualizzare Query
Tutti i log
resource.type="gce_subnetwork"
logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows"
Log per una subnet specifica
resource.type="gce_subnetwork"
logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows"
resource.labels.subnetwork_name="SUBNET_NAME"
Log per una specifica istanza di macchina virtuale (VM)
resource.type="gce_subnetwork"
logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows"
jsonPayload.src_instance.vm_name="VM_NAME"
Log per il traffico verso un intervallo di subnet specifico
resource.type="gce_subnetwork"
logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows"
ip_in_net(jsonPayload.connection.dest_ip, SUBNET_RANGE)
Log per uno specifico cluster Google Kubernetes Engine (GKE)
resource.type="k8s_cluster"
logName="projects/PROJECT_ID/logs/vpc_flows"
resource.labels.cluster_name="CLUSTER_NAME"
Log solo per il traffico in uscita da una subnet
logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows" AND
jsonPayload.reporter="SRC" AND
jsonPayload.src_vpc.subnetwork_name="SUBNET_NAME" AND
(jsonPayload.dest_vpc.subnetwork_name!="SUBNET_NAME"
 OR NOT jsonPayload.dest_vpc.subnetwork_name:*)
Log di tutto il traffico in uscita da una rete Virtual Private Cloud (VPC)
logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows" AND
jsonPayload.reporter="SRC" AND
jsonPayload.src_vpc.vpc_name="VPC_NAME" AND
(jsonPayload.dest_vpc.vpc_name!="VPC_NAME" OR NOT jsonPayload.dest_vpc:*)
Log per una singola porta di destinazione
resource.type="gce_subnetwork"
logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows"
jsonPayload.connection.dest_port=PORT
jsonPayload.connection.protocol=PROTOCOL
Log per più porte di destinazione
resource.type="gce_subnetwork"
logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows"
jsonPayload.connection.dest_port=(PORT1 OR PORT2)
jsonPayload.connection.protocol=PROTOCOL

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto.
  • SUBNET_NAME: il nome della subnet.
  • VM_NAME: il nome della VM.
  • SUBNET_RANGE: un intervallo CIDR, ad esempio 192.168.1.0/24.
  • CLUSTER_NAME: il nome del tuo cluster GKE.
  • VPC_NAME: il nome della tua rete VPC.
  • PORT1 e PORT2: le porte di destinazione.
  • PROTOCOL: il protocollo di comunicazione.

Esegui il routing dei log in BigQuery, Pub/Sub e destinazioni personalizzate

Puoi eseguire il routing dei log di flusso da Logging a una destinazione a tua scelta, come descritto nella sezione Panoramica su routing e archiviazione nella documentazione di Logging. Consulta la sezione precedente per alcuni esempi di filtri.

Risoluzione dei problemi

Nessun vpc_flows viene visualizzato in Logging per la risorsa gce_subnetwork

  • Verifica che il logging sia abilitato per la subnet specificata.
  • I flussi VPC sono supportati solo per le reti VPC. Se hai una rete legacy, non vedrai alcun log.
  • Nelle reti VPC condivisi, i log vengono visualizzati solo nel progetto host, non nei progetti di servizio. Assicurati di cercare i log nel progetto host.
  • I filtri di esclusione di Logging bloccano i log specificati. Assicurati che non esistano regole di esclusione che ignorano i log di flusso VPC:
    1. Vai a Router dei log.
    2. Nel menu Altre azioni per il bucket di logging, fai clic su Visualizza dettagli sink.
    3. Assicurati che non esistano regole di esclusione che potrebbero ignorare i log di flusso VPC.

Nessun valore RTT o byte in alcuni log

  • Le misurazioni RTT potrebbero mancare se non sono stati campionati abbastanza pacchetti per acquisire RTT. Questo è più probabile per le connessioni a basso volume.
  • I valori RTT sono disponibili solo per i flussi TCP.
  • Alcuni pacchetti vengono inviati senza payload. Se i pacchetti con solo intestazione sono campionati, il valore dei byte sarà 0.

Alcuni flussi sono mancanti

  • I pacchetti in entrata vengono campionati dopo le regole firewall VPC in entrata. Assicurati che non esistano regole firewall in entrata che negano i pacchetti che prevedi vengano registrati. Se non hai la certezza che le regole firewall VPC stiano bloccando i pacchetti in entrata, puoi abilitare il logging delle regole firewall ed esaminare i log.
  • Sono supportati solo i protocolli TCP, UDP, ICMP, ESP e GRE. I log di flusso VPC non supportano altri protocolli.
  • I log sono campionati. Alcuni pacchetti con flussi di volume molto bassi potrebbero andare persi.

Annotazioni GKE mancanti in alcuni log

Assicurati che il cluster GKE sia una versione supportata.

Log mancanti per alcuni flussi GKE

Assicurati che l'opzione Visibilità tra nodi sia abilitata nel cluster. In caso contrario, i flussi tra i pod sullo stesso nodo non vengono registrati.

Passaggi successivi