Accéder aux journaux de flux
Cette page explique comment accéder aux journaux de flux à l'aide de Cloud Logging.
Accéder aux journaux de flux dans l'explorateur de journaux
Les journaux de flux VPC écrivent des journaux dans le projet Google Cloud du rapporteur de journaux. Vous pouvez afficher les journaux de flux dans l'explorateur de journaux. Les journaux de flux VPC utilisent les journaux suivants pour collecter les entrées de journal:
- Le journal
compute.googleapis.com/vpc_flows
collecte les entrées de journal pour les sous-réseaux. Affichez ce journal si vous avez activé les journaux de flux VPC à l'aide de l'API Compute Engine. - Pour toutes les autres configurations de journaux de flux VPC, consultez le journal
networkmanagement.googleapis.com/vpc_flows
. Ce journal collecte les entrées de journal pour les réseaux VPC (preview), les sous-réseaux (preview), les rattachements de VLAN pour Cloud Interconnect et les tunnels Cloud VPN.
Configurer IAM
Pour configurer le contrôle des accès pour Logging, consultez le guide du contrôle des accès pour Logging.
Afficher les journaux de flux à l'aide de filtres de ressources
Pour afficher les journaux de flux dans un Google Cloud projet à l'aide de filtres de ressources, consultez les sections suivantes. Vous pouvez également afficher ces journaux à l'aide des requêtes de l'explorateur de journaux, comme décrit dans la section Filtrer les journaux de flux à l'aide de requêtes.
Afficher les journaux de flux de tous les sous-réseaux (compute.googleapis.com/vpc_flows
)
Dans la console Google Cloud , accédez à la page Explorateur de journaux.
Cliquez sur Toutes les ressources.
Dans la liste Sélectionner une ressource, cliquez sur Sous-réseau, puis sur Appliquer.
Cliquez sur Tous les noms de journaux.
Dans la liste Sélectionner les noms des journaux, recherchez Compute Engine, cliquez sur vpc_flows, puis sur Appliquer.
Afficher les journaux de flux d'un sous-réseau spécifique (compute.googleapis.com/vpc_flows
)
Dans la console Google Cloud , accédez à la page Explorateur de journaux.
Cliquez sur Toutes les ressources.
Dans la liste Sélectionner une ressource, cliquez sur Sous-réseau.
Dans la liste ID de sous-réseau, sélectionnez le sous-réseau, puis cliquez sur Appliquer.
Cliquez sur Tous les noms de journaux.
Dans la liste Sélectionner les noms des journaux, recherchez Compute Engine, cliquez sur vpc_flows, puis sur Appliquer.
Afficher les journaux de flux pour toutes les ressources (networkmanagement.googleapis.com/vpc_flows
)
Dans la console Google Cloud , accédez à la page Explorateur de journaux.
Cliquez sur Toutes les ressources.
Dans la liste Sélectionner une ressource, cliquez sur Configuration des journaux de flux VPC, puis sur Appliquer.
Afficher les journaux de flux d'une configuration spécifique (networkmanagement.googleapis.com/vpc_flows
)
Dans la console Google Cloud , accédez à la page Explorateur de journaux.
Cliquez sur Toutes les ressources.
Dans la liste Sélectionner une ressource, cliquez sur Configuration des journaux de flux VPC, puis sélectionnez la configuration des journaux de flux VPC que vous souhaitez afficher.
Cliquez sur Appliquer.
Filtrer les journaux de flux à l'aide de requêtes
Dans la console Google Cloud , accédez à la page Explorateur de journaux.
Si le champ de l'éditeur de requête n'apparaît pas dans le volet Query (Requête), cliquez sur le bouton Show query (Afficher la requête).
Dans le champ de l'éditeur de requête, saisissez une requête :
Si vous avez activé les journaux de flux VPC pour un sous-réseau à l'aide de l'API Compute Engine, la requête doit cibler
compute.googleapis.com
pour afficher les journaux de flux. Par exemple, saisissez la requête suivante en remplaçantPROJECT_ID
par l'ID de votre Google Cloud projet etSUBNET_NAME
par votre sous-réseau:resource.type="gce_subnetwork" logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows" resource.labels.subnetwork_name="SUBNET_NAME"
Pour toutes les autres requêtes, la requête doit cibler
networkmanagement.googleapis.com
. Par exemple, pour afficher les journaux de flux d'un tunnel Cloud VPN source spécifique, saisissez la requête suivante :resource.type="vpc_flow_logs_config" logName="projects/PROJECT_ID/logs/networkmanagement.googleapis.com%2Fvpc_flows" jsonPayload.reporter="src_gateway" labels.target_resource_name="projects/PROJECT_ID/regions/REGION/vpnTunnels/NAME"
Remplacez les éléments suivants :
PROJECT_ID
: ID du Google Cloud projetREGION
: région du tunnel Cloud VPNNAME
: nom du tunnel Cloud VPN
Pour obtenir d'autres exemples de requêtes que vous pouvez exécuter pour afficher vos journaux de flux, consultez la section Exemples de requêtes de l'explorateur de journaux pour les journaux de flux VPC.
Cliquez sur Exécuter la requête.
Exemples de requêtes de l'explorateur de journaux pour les journaux de flux VPC
Le tableau suivant fournit des exemples de requêtes de l'explorateur de journaux que vous pouvez exécuter pour afficher vos journaux de flux dans un Google Cloud projet.
Les exemples de la section Requêtes pour networkmanagement.googleapis.com/vpc_flows supposent que chaque ressource est journalisée par une seule configuration de journaux de flux VPC. Si vous utilisez plusieurs configurations de journaux de flux VPC par ressource, spécifiez la configuration que vous souhaitez interroger pour exclure les journaux en double des résultats de la requête. Vous pouvez également spécifier plusieurs configurations dans une requête.
Journaux que vous souhaitez afficher | Requête |
---|---|
Tous les journaux de flux | resource.type=("gce_subnetwork" OR "vpc_flow_logs_config") logName=("projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows" OR "projects/PROJECT_ID/logs/networkmanagement.googleapis.com%2Fvpc_flows") |
Requêtes pour le journal compute.googleapis.com/vpc_flows |
|
Journaux de tous les sous-réseaux | resource.type="gce_subnetwork" logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows" |
Journaux d'un sous-réseau spécifique | resource.type="gce_subnetwork" logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows" resource.labels.subnetwork_name="SUBNET_NAME" |
Journaux d'une instance de machine virtuelle (VM) spécifique | resource.type="gce_subnetwork" logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows" (jsonPayload.src_instance.vm_name="VM_NAME" OR jsonPayload.dest_instance.vm_name="VM_NAME") |
Journaux relatifs au trafic vers une plage de sous-réseau spécifique | resource.type="gce_subnetwork" logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows" ip_in_net(jsonPayload.connection.dest_ip, SUBNET_RANGE) |
Journaux d'un cluster Google Kubernetes Engine (GKE) spécifique | resource.type="gce_subnetwork" logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows" (jsonPayload.src_gke_details.cluster.cluster_name="CLUSTER_NAME" OR jsonPayload.dest_gke_details.cluster.cluster_name="CLUSTER_NAME") |
Journaux correspondant au trafic sortant d'un sous-réseau | resource.type="gce_subnetwork" 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:*) |
Journaux de l'ensemble du trafic sortant d'un réseau cloud privé virtuel (VPC) | resource.type="gce_subnetwork" 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:*) |
Journaux d'un port de destination individuel | resource.type="gce_subnetwork" logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows" jsonPayload.connection.dest_port=PORT jsonPayload.connection.protocol=PROTOCOL |
Journaux pour plusieurs ports de destination | 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 |
Requêtes pour le journal networkmanagement.googleapis.com/vpc_flows |
|
Journaux de toutes les configurations de journaux de flux VPC | resource.type="vpc_flow_logs_config" logName="projects/PROJECT_ID/logs/networkmanagement.googleapis.com%2Fvpc_flows" |
Journaux d'une configuration de journaux de flux VPC spécifique | resource.type="vpc_flow_logs_config" logName="projects/PROJECT_ID/logs/networkmanagement.googleapis.com%2Fvpc_flows" resource.labels.name="CONFIG_NAME" |
Journaux d'un tunnel Cloud VPN source spécifique | resource.type="vpc_flow_logs_config" logName="projects/PROJECT_ID/logs/networkmanagement.googleapis.com%2Fvpc_flows" jsonPayload.reporter="src_gateway" labels.target_resource_name="projects/PROJECT_ID/regions/REGION/vpnTunnels/NAME" |
journaux de tous les rattachements de VLAN de destination | resource.type="vpc_flow_logs_config" logName="projects/PROJECT_ID/logs/networkmanagement.googleapis.com%2Fvpc_flows" jsonPayload.reporter="dest_gateway" jsonPayload.dest_gateway.type="INTERCONNECT_ATTACHMENT" |
Journaux de tous les rattachements de VLAN de destination dans une région spécifique | resource.type="vpc_flow_logs_config" logName="projects/PROJECT_ID/logs/networkmanagement.googleapis.com%2Fvpc_flows" jsonPayload.reporter="dest_gateway" jsonPayload.dest_gateway.type="INTERCONNECT_ATTACHMENT" jsonPayload.dest_gateway.location="REGION" |
Remplacez les éléments suivants :
PROJECT_ID
: ID du projetSUBNET_NAME
: nom du sous-réseauVM_NAME
: nom de la VMSUBNET_RANGE
: plage CIDR, telle que192.168.1.0/24
CLUSTER_NAME
: nom du cluster GKEVPC_NAME
: nom du réseau VPC.PORT1
etPORT2
: ports de destinationPROTOCOL
: protocole de communicationCONFIG_NAME
: nom de la configuration de journaux de flux VPCREGION
: région du rattachement de VLAN ou du tunnel Cloud VPNNAME
: nom du tunnel Cloud VPN
Routage des journaux vers BigQuery, Pub/Sub et des cibles personnalisées
Vous pouvez acheminer les journaux de flux depuis Logging vers la destination de votre choix, comme décrit dans la section Présentation du routage et du stockage de la documentation de Logging. Pour obtenir des exemples de filtres, consultez la section précédente.
Dépannage
Aucun vpc_flows
n'apparaît dans Logging pour la ressource gce_subnetwork
.
- Vérifiez que la journalisation est activée pour le sous-réseau donné.
- Les flux VPC ne sont disponibles que pour les réseaux VPC. Si vous travaillez avec un ancien réseau, aucun journal ne s'affichera.
- Pour les réseaux VPC partagés, les journaux apparaissent uniquement dans le projet hôte, et non dans les projets de service. Vérifiez que vous recherchez bien les journaux dans le projet hôte.
- Les filtres d'exclusion de Logging bloquent les journaux indiqués.
Vérifiez qu'aucune règle d'exclusion ne supprime les journaux de flux VPC.
- Accédez au routeur de journaux.
- Dans le menu Autres actions de votre bucket de journaux, cliquez sur Afficher les détails du récepteur.
- Vérifiez qu'il n'existe aucune règle d'exclusion pouvant supprimer les journaux de flux VPC.
- Utilisez Google Cloud CLI ou l'API pour déterminer si une configuration de filtrage des journaux filtre tout le trafic d'un sous-réseau donné. Par exemple, si
filterExpr
est défini surfalse
, aucun journal ne s'affiche.
Certains journaux n'affichent aucune valeur de type DAR ou octet.
- Les mesures de latence DAR (délai aller-retour) peuvent être manquantes si un nombre insuffisant de paquets ont été échantillonnés pour capturer cette valeur. Cette situation est davantage susceptible de se produire pour les connexions à faible volume.
- Les valeurs de type DAR ne sont disponibles que pour les flux TCP signalés par les VM.
- Certains paquets sont envoyés sans charge utile. Si l'échantillonage n'a sélectionné que des paquets avec uniquement des en-têtes, la valeur de type octet sera égale à 0.
Certains flux sont manquants.
- Les paquets d'entrée sont échantillonnés après les règles de pare-feu VPC d'entrée. Assurez-vous qu'aucune règle de pare-feu d'entrée ne refuse les paquets qui doivent être journalisés. Si vous ne savez pas si les règles de pare-feu VPC bloquent des paquets d'entrée, vous pouvez activer la journalisation des règles de pare-feu et inspecter les journaux correspondants.
- Seuls les protocoles TCP, UDP, ICMP, ESP et GRE sont acceptés. Les journaux de flux VPC ne sont compatibles avec aucun autre protocole.
- Les journaux sont échantillonnés. Certains paquets à très faible volume peuvent donc passer à travers les mailles du filet.
Annotations GKE manquantes dans certains journaux
Assurez-vous que la version de votre cluster GKE est une version compatible.
Journaux manquants pour certains flux GKE
Assurez-vous que la visibilité intranœud est activée dans le cluster. Sinon, les flux entre les pods du même nœud ne sont pas consignés.
Étapes suivantes
- Consultez la documentation de Logging.
- Consultez la documentation sur les récepteurs de journaux.
- Analyser les journaux de flux dans Flow Analyzer