Présentation du routage et du stockage

Cette page explique comment Cloud Logging traite les entrées de journal et décrit les composants clés du routage et du stockage de Logging.

De manière générale, voici comment Cloud Logging achemine et stocke les entrées de journal :

Schéma illustrant le routage des entrées des journal par Cloud Logging.

Ingérer et acheminer les journaux avec le routeur de journaux

Les sections suivantes expliquent comment les journaux sont ingérés par Logging et acheminés via le routeur de journaux à l'aide de récepteurs.

Routeur de journaux

Une entrée de journal est envoyée à la ressource Google Cloud spécifiée dans son champ logName pendant son exécution entries.write

Cloud Logging reçoit des entrées de journal via l'API Cloud Logging, où elles transitent par le routeur de journaux. Les récepteurs du routeur de journaux comparent chaque entrée de journal aux filtres d'inclusion et filtres d'exclusion existants qui déterminent les destinations, y compris les buckets Cloud Logging, auxquels l'entrée de journal doit être envoyée. Vous pouvez utiliser des combinaisons de récepteurs pour acheminer les journaux vers plusieurs destinations.

Pour acheminer de manière fiable des journaux, le routeur de journaux les stocke temporairement (non illustrés sur l'image), ce qui les met en mémoire tampon pour les protéger contre les interruptions temporaires des récepteurs. Notez que le stockage temporaire du routeur de journaux est différent du stockage à long terme fourni par les buckets Logging.

Récepteurs

Les récepteurs contrôlent la manière dont Cloud Logging achemine les journaux. Les récepteurs vous permettent d'acheminer une partie ou l'ensemble de vos journaux vers des destinations compatibles. Vous trouverez ci-dessous certaines des raisons pour lesquelles vous pouvez contrôler la manière dont vos journaux sont acheminés :

  • Pour stocker des journaux peu susceptibles d'être lus, mais qui doivent être conservés à des fins de conformité.
  • Pour organiser vos journaux dans des buckets dans un format qui vous est utile.
  • Utiliser des outils d'analyse big data sur vos journaux.
  • Diffuser vos journaux vers d'autres applications, d'autres dépôts, ainsi que vers des organisations tierces.

Les récepteurs appartiennent à une ressource Google Cloud donnée : projets Cloud, comptes de facturation, dossiers et organisations. Lorsque la ressource reçoit une entrée de journal, elle l'achemine en fonction des récepteurs qu'elle contient et, si cette option est activée, de tous les récepteurs ancêtres appartenant à la hiérarchie des ressources. L'entrée de journal est envoyée à la destination associée à chaque récepteur correspondant.

Cloud Logging fournit deux récepteurs prédéfinis pour chaque projet Cloud, compte de facturation, dossier et organisation : _Required et _Default. Tous les journaux générés dans une ressource sont automatiquement traités via ces deux récepteurs, puis sont stockés dans l'un des buckets du nom correspondant _Required ou _Default.

Les récepteurs agissent indépendamment les uns des autres. Quelle que soit la manière dont les récepteurs prédéfinis traitent vos entrées de journal, vous pouvez créer vos propres récepteurs pour acheminer une partie ou l'ensemble de vos journaux vers différentes destinations compatibles ou les empêcher d'être stockés par Cloud Logging.

Le comportement de routage de chaque récepteur est contrôlé par la configuration du filtre d'inclusion et des filtres d'exclusion pour ce récepteur. Selon la configuration du récepteur, chaque entrée de journal reçue par Cloud Logging appartient à l'une ou plusieurs des catégories suivantes :

  • Stockée dans Cloud Logging et non routée ailleurs.

  • Stockée dans Cloud Logging et acheminée vers une destination compatible.

  • Non stockée dans Cloud Logging, mais acheminée vers une destination compatible.

  • Ni stockée dans Cloud Logging, ni acheminée ailleurs.

Vous créez généralement des récepteurs au niveau du projet Cloud. Toutefois, si vous souhaitez combiner et acheminer les journaux à partir des ressources contenues dans une organisation ou un dossier Google Cloud, vous pouvez créer des récepteurs agrégés.

Vous ne pouvez pas acheminer les entrées de journal reçues par Logging avant la création de votre récepteur, car le routage s'effectue lorsque les journaux transitent par l'API Logging et que les nouvelles règles de routage ne s'appliquent qu'aux journaux écrits après la création de ces règles. Si vous devez acheminer les entrées de journal de manière rétroactive, consultez la section Copier des journaux.

Filtres d'inclusion

Pour tout nouveau récepteur, si vous ne spécifiez pas de filtres, tous les journaux correspondent et sont acheminés vers la destination du récepteur. Vous pouvez configurer le récepteur pour sélectionner des journaux spécifiques en définissant un filtre d'inclusion. Vous pouvez également définir un ou plusieurs filtres d'exclusion pour exclure les journaux de la destination du récepteur.

Lorsque vous configurez des récepteurs, vous créez des filtres d'inclusion dans le langage de requête Logging. Les récepteurs peuvent également contenir plusieurs filtres d'exclusion.

Chaque entrée de journal reçue par Logging est acheminée en fonction des règles de filtrage suivantes :

  • Les filtres d'exclusion du récepteur remplacent tous ses filtres d'inclusion définis. Si un journal correspond à un filtre d'exclusion situé dans le récepteur, il ne correspond à aucun récepteur, quels que soient les filtres d'inclusion définis. L'entrée de journal n'est pas acheminée vers la destination de ce récepteur.

  • Si le récepteur ne contient pas de filtre d'inclusion, voici ce qui se produit :

    • Si l'entrée de journal correspond à un filtre d'exclusion, elle n'est pas acheminée vers la destination du récepteur.
    • Si l'entrée de journal ne correspond à aucun filtre d'exclusion, elle est acheminée vers la destination du récepteur. Un filtre d'inclusion vide sélectionne tous les journaux.
  • Si le récepteur contient un filtre d'inclusion, voici ce qui se produit :

    • Si l'entrée de journal correspond au filtre d'inclusion, elle est acheminée vers la destination du récepteur.
    • Si l'entrée de journal ne correspond pas au filtre d'inclusion, elle n'est pas acheminée vers la destination du récepteur.

Filtres d'exclusion

Lorsque vous créez un récepteur, vous pouvez définir plusieurs filtres d'exclusion, ce qui vous permet d'empêcher que les entrées de journal correspondantes soient acheminées vers la destination du récepteur ou ingérées par Cloud Logging. Vous pouvez créer des filtres d'exclusion à l'aide du langage de requête Logging.

Les journaux sont exclus une fois qu'ils ont été reçus par l'API Logging. Par conséquent, l'exclusion des journaux ne réduit pas le nombre d'appels d'API entries.write.

Les entrées de journal exclues ne sont pas disponibles dans l'explorateur de journaux ni dans Cloud Debugger.

Les entrées de journal qui ne sont pas acheminées vers au moins un bucket de journaux, explicitement avec des filtres d'exclusion ou parce qu'elles ne correspondent à aucun récepteur avec une destination de stockage Logging, sont également exclues de Error Reporting.

Les métriques basées sur les journaux définies par l'utilisateur sont calculées à partir des entrées des journaux inclus et exclus. Pour en savoir plus, consultez la page Surveiller vos journaux.

Destinations compatibles

Vous pouvez utiliser le routeur de journaux pour acheminer certains journaux vers des destinations compatibles dans n'importe quel projet Cloud. Logging accepte les destinations de récepteurs suivantes :

  • Cloud Storage : fichiers JSON stockés dans des buckets Cloud Storage ; fournit un stockage économique et à long terme.
  • BigQuery : tables créées dans des ensembles de données BigQuery ; fournit des fonctionnalités d'analyse big data.
  • Pub/Sub : messages au format JSON distribués dans des sujets Pub/Sub ; compatible avec des intégrations tierces, telles que Splunk, avec Logging.
  • Cloud Logging : entrées de journal conservées dans des buckets de journaux ; fournit un espace de stockage dans Cloud Logging avec des durées de conservation personnalisables.

Pour en savoir plus sur le routage des journaux vers des destinations compatibles, consultez la page Configurer des récepteurs.

Stocker, afficher et gérer les journaux

La section suivante explique comment les journaux sont stockés dans Cloud Logging et comment les afficher et les gérer.

Buckets de journaux

Cloud Logging utilise des buckets de journaux comme conteneurs dans vos projets, comptes de facturation, dossiers et organisations Google Cloud pour stocker et organiser vos données de journaux. Les journaux que vous stockez dans Cloud Logging sont indexés, optimisés et distribués afin de vous permettre d'analyser vos journaux en temps réel. Les buckets Cloud Logging sont des entités de stockage différentes de celles des buckets Cloud Storage portant le même nom.

Pour chaque projet, compte de facturation, dossier et organisation Cloud, Logging crée automatiquement deux buckets de journaux : _Required et _Default. Logging crée automatiquement des récepteurs nommés _Required et _Default qui, dans la configuration par défaut, acheminent les journaux vers les buckets du nom correspondant.

Vous pouvez désactiver les journaux acheminés vers le bucket de journaux _Default. Vous ne pouvez pas modifier les règles de routage du bucket _Required.

En outre, vous pouvez créer des buckets définis par l'utilisateur pour n'importe quel projet Cloud.

Vous pouvez créer des récepteurs afin d'acheminer la totalité ou une partie de vos journaux vers n'importe quel bucket de journaux. Vous avez ainsi la possibilité de choisir le projet Cloud dans lequel vos journaux sont stockés et les autres journaux devant être stockés conjointement.

Pour en savoir plus, consultez la page Configurer les buckets de journaux.

Bucket de journaux _Required

Cloud Logging achemine automatiquement les types de journaux suivants vers le bucket _Required :

Cloud Logging conserve les journaux de ce bucket pendant 400 jours ; vous ne pouvez pas modifier cette durée.

Vous ne pouvez ni modifier, ni supprimer le bucket _Required. Vous ne pouvez pas désactiver le récepteur _Required, qui achemine les journaux vers le bucket _Required.

Ni les tarifs d'ingestion, ni les tarifs de stockage ne s'appliquent aux données de journaux stockées dans le bucket de journaux _Required.

Bucket de journaux _Default

Toute entrée de journal qui n'est pas ingérée par le bucket _Required est acheminée par le récepteur _Default vers le bucket _Default, sauf si vous désactivez ou modifiez le récepteur _Default. Pour obtenir des instructions sur la modification des récepteurs, consultez la page Gérer les récepteurs.

Vous ne pouvez pas supprimer le bucket _Default.

Les journaux conservés dans le bucket _Default sont conservés pendant 30 jours, sauf si vous configurez la conservation personnalisée pour le bucket.

La tarification Cloud Logging s'applique aux données de journaux conservées dans le bucket _Default.

Buckets de journaux définis par l'utilisateur

Vous pouvez également créer des buckets de journaux définis par l'utilisateur dans n'importe quel projet Cloud. En appliquant des récepteurs à vos buckets de journaux définis par l'utilisateur, vous pouvez acheminer un sous-ensemble de vos journaux vers n'importe quel bucket de journaux, ce qui vous permet de choisir le projet Cloud dans lequel vos journaux sont stockés, ainsi que les autres journaux stockés avec eux.

Par exemple, pour un journal généré dans le projet A, vous pouvez configurer un récepteur pour acheminer ce journal vers des buckets définis par l'utilisateur dans le projet A ou le projet B.

La tarification Cloud Logging s'applique aux données de journaux conservées dans ce bucket, quel que soit le type de journal.

Vous pouvez configurer la conservation personnalisée pour le bucket.

Pour en savoir plus sur la gestion des buckets de journaux définis par l'utilisateur, y compris sur leur suppression ou leur mise à jour, consultez la page Configurer et gérer des buckets de journaux.

Régionalisation

Les buckets de journaux sont des ressources régionales. L'infrastructure qui stocke, indexe et recherche vos journaux est située dans un emplacement géographique spécifique. Google gère cette infrastructure afin que vos applications soient disponibles de manière redondante dans les zones de cette région.

Pour en savoir plus sur l'emplacement des données des journaux, consultez la page Régionalité des données pour Cloud Logging.

Lorsque vous créez votre bucket de journaux, vous pouvez choisir de stocker vos journaux dans l'une des régions suivantes :

Continent Régions
Asie asia-east1
asia-east2
asia-northeast1
asia-northeast2
asia-northeast3
asia-south1
asia-south2
asia-southeast1
asia-southeast2
Australie australia-southeast1
australia-southeast2
Europe europe-central2
europe-north1
europe-west1
europe-west2
europe-west3
europe-west4
europe-west6
Amérique du Nord northamerica-northeast1
northamerica-northeast2
us-central1
us-east1
us-east4
us-west1
us-west2
us-west3
us-west4
Amérique du Sud southamerica-east1

Outre ces régions, vous avez également la possibilité de définir l'emplacement sur global, ce qui signifie que vous n'avez pas besoin de spécifier l'emplacement physique du stockage de vos journaux.

Règle d'administration

Vous pouvez créer une règle d'administration pour vous assurer que votre organisation répond à vos besoins réglementaires et de conformité. Grâce à la règle d'administration, vous pouvez spécifier les régions dans lesquelles votre organisation peut créer des buckets de journaux. Vous pouvez également empêcher votre organisation de créer des buckets de journaux dans les régions spécifiées.

Cloud Logging n'applique pas la règle d'administration que vous venez de créer sur votre bucket de journaux existant ; la règle n'est appliquée qu'aux nouveaux buckets de journaux.

Pour en savoir plus sur la création d'une règle d'administration basée sur l'emplacement, consultez la page Limiter les emplacements de ressources.

Conservation

Cloud Logging conserve les journaux conformément aux règles de conservation appliquées au type de bucket de journaux où ils sont conservés.

Vous pouvez configurer Cloud Logging de façon à ce que vos journaux soient conservés entre 1 et 3 650 jours. Les règles de conservation personnalisées s'appliquent à tous les journaux d'un bucket, qu'ils aient été copiés ou non à partir d'un autre emplacement.

Pour plus d'informations sur la définition des règles de conservation d'un bucket de journaux, consultez la page Configurer la conservation personnalisée.

Vues de journaux

Les vues de journal vous permettent de contrôler qui a accès aux journaux dans vos buckets de journaux.

Cloud Logging crée automatiquement la vue _AllLogs pour chaque bucket, qui affiche tous les journaux. Cloud Logging crée également une vue pour le bucket _Default appelé _Default, qui affiche tous les journaux, à l'exception des journaux d'audit d'accès aux données.

Comme les buckets de journaux peuvent contenir les journaux de plusieurs projets Cloud, vous souhaiterez peut-être contrôler quels sont les projets Cloud dont les différents utilisateurs peuvent consulter les journaux. Vous pouvez créer des vues de journaux personnalisées, qui vous offrent un contrôle d'accès plus précis pour ces buckets.

Pour en savoir plus, consultez la page Gérer les vues de journaux.

Utiliser des journaux dans l'écosystème Google Cloud

La section suivante fournit des informations sur l'utilisation des journaux dans la solution Google Cloud plus vaste.

Métriques basées sur les journaux

Les métriques basées sur les journaux sont des métriques Cloud Monitoring basées sur le contenu d'entrées de journal. Si Cloud Logging reçoit une entrée de journal pour un projet Cloud correspondant au filtre de l'une des métriques du projet Cloud, cette entrée de journal est reflétée dans les données de métriques.

Les filtres d'exclusion de récepteur ne sont pas appliqués aux métriques basées sur les journaux. Même si vous empêchez les journaux d'être ingérés par l'API Cloud Logging et qu'ils ne sont stockés dans aucun bucket de journaux, ces journaux peuvent être comptabilisés dans les métriques basées sur les journaux.

Les métriques basées sur les journaux s'appliquent au niveau du projet Cloud. Ces métriques sont calculées par le routeur de journaux et ne s'appliquent qu'aux journaux ingérés et exclus dans le projet Cloud dans lequel elles sont reçues.

Pour en savoir plus, consultez la présentation des métriques basées sur les journaux.

Rechercher des journaux dans les destinations compatibles

Pour en savoir plus sur le format des entrées de journal acheminées et sur l'organisation des journaux dans les destinations, consultez la page Afficher les journaux dans les destinations de récepteur.

Cas d'utilisation courants

Pour découvrir les cas d'utilisation courants du routage et du stockage des journaux, consultez les documents et tutoriels suivants :

Exigences de conformité

Pour connaître les bonnes pratiques d'utilisation du routage pour la gouvernance des données, consultez les documents suivants :

Contrôle des accès

Pour en savoir plus sur votre utilisation des rôles et des autorisations Identity and Access Management (IAM) en vue de contrôler l'accès aux données Cloud Logging, consultez le Guide du contrôle des accès.

Tarifs

Pour comprendre la tarification de l'ingestion et du stockage, consultez les tarifs de Cloud Logging.

Cloud Logging ne facture pas le routage des journaux, mais des frais de destination peuvent s'appliquer. Pour en savoir plus, consultez les détails des tarifs du service approprié :

Notez également que si vous exportez vos journaux de flux de cloud privé virtuel (VPC) puis que vous les excluez de Cloud Logging, des frais de génération des journaux de flux VPC s'appliquent en plus des frais de destination.

Étape suivante

Pour vous aider à acheminer et à stocker les données Cloud Logging, consultez les documents suivants :