Présentation du routage et du stockage

Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.

Ce document explique comment Cloud Logging traite les entrées de journal et décrit les principaux composants du routage et du stockage de Logging. Le routage fait référence au processus utilisé par Cloud Logging pour déterminer la procédure à suivre lors de l'arrivée d'une entrée de journal. Vous pouvez acheminer les entrées de journal vers des destinations telles que des buckets Logging, qui stockent l'entrée de journal, ou vers Pub/Sub. Pour exporter vos journaux vers des destinations tierces, acheminez-les vers un sujet Pub/Sub, puis autorisez la destination tierce à s'abonner au sujet Pub/Sub.

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 à 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 au moment de l'appel 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) vers lesquelles 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 les journaux, le routeur de journaux les stocke également temporairement (et non dans l'image), ce qui les met en mémoire tampon 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.

Les entrées de journal entrantes dont l'horodatage est supérieur à la durée de conservation des journaux passée ou supérieure à 24 heures sont supprimées.

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 avoir besoin de 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 selon 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. Par exemple, si vous souhaitez exporter vos journaux depuis Google Cloud afin de les consulter sur une plate-forme tierce, configurez un récepteur pour acheminer vos entrées de journal vers Pub/Sub.

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 pour les exclure du stockage 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 à 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. Effectivement, le routage s'effectue lorsque les journaux transitent par l'API Logging et 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 sont considérés comme des correspondances 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 des 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 d'un récepteur remplacent tous ses filtres d'inclusion définis. Un journal correspondant à un filtre d'exclusion du récepteur n'est jamais considéré comme une correspondance, 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. Les filtres d'exclusion vous permettent d'exclure les entrées de journal correspondantes du routage vers la destination du récepteur ou de l'ingestion par Cloud Logging. Pour créer des filtres d'exclusion, utilisez le langage de requête Logging.

Les entrées de journal sont exclues après avoir été reçues par l'API Logging. Par conséquent, ces entrées de journal consomment le quota d'API entries.write. Vous ne pouvez pas réduire le nombre d'appels d'API entries.write en excluant des entrées de journal.

Les entrées de journal exclues ne sont disponibles ni 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, que ce soit de manière explicite à cause des filtres d'exclusion ou simplement parcequ'elles ne correspondent à aucun récepteur associé à une destination de stockage Logging, sont également exclues d'Error Reporting. Par conséquent, ces journaux ne sont pas disponibles pour résoudre les échecs.

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

Les entrées de journal qui ne sont pas exclues peuvent entraîner des frais. Pour en savoir plus, consultez la page Tarifs de Cloud Logging.

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écepteur suivantes:

  • Buckets de journaux Cloud Logging: fournit un espace de stockage dans Cloud Logging. Un bucket de journaux peut stocker les journaux ingérés par plusieurs projets Google Cloud. Vous spécifiez la durée de conservation des données, l'emplacement de stockage des données et les vues de journaux sur un bucket de journaux. Les vues de journaux vous permettent de contrôler les journaux d'un bucket de journaux auxquels un utilisateur peut accéder. Les buckets de journaux sont recommandés lorsque vous souhaitez dépanner vos applications et services, ou pour analyser vos données de journal. Si vous devez combiner vos données Cloud Logging avec d'autres sources de données, vous pouvez stocker vos journaux dans des buckets de journaux mis à niveau pour utiliser Log Analytics, puis associer ce bucket à BigQuery. Pour en savoir plus sur l'affichage des journaux, consultez les pages Présentation des journaux de requêtes et de journaux et Afficher les journaux acheminés vers des buckets Cloud Logging.
  • Sujets Pub/Sub : fournit une compatibilité avec les intégrations tierces, telles que Splunk, avec Logging. Les entrées de journal sont au format JSON, puis transmises à un sujet Pub/Sub. Pour en savoir plus sur l'affichage de ces journaux, leur organisation et la configuration d'une intégration tierce, consultez la section Afficher les journaux acheminés vers Pub/Sub.
  • Ensembles de données BigQuery : fournit un stockage des entrées de journal dans les ensembles de données BigQuery. Vous pouvez utiliser les fonctionnalités d'analyse big data sur les journaux stockés. Si vous devez combiner vos données Cloud Logging avec d'autres sources de données, vous pouvez acheminer vos journaux vers BigQuery. Une autre solution consiste à stocker vos journaux dans des buckets de journaux mis à niveau pour utiliser Log Analytics, puis associés à BigQuery. Pour en savoir plus sur l'affichage des journaux acheminés vers BigQuery, consultez la page Afficher les journaux acheminés vers BigQuery.
  • Buckets Cloud Storage: fournit un stockage économique et à long terme des données de journaux dans Cloud Storage. Les entrées de journal sont stockées sous forme de fichiers JSON. Pour en savoir plus sur l'affichage de ces journaux, leur organisation et la gestion des journaux arrivés en retard, consultez la section Afficher les journaux acheminés vers Cloud Storage.

Pour en savoir plus, consultez la section Journaux de routage vers les destinations compatibles.

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 de les analyser 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 le récepteur _Default, qui achemine les journaux vers le bucket de journaux _Default. Pour modifier le comportement des récepteurs _Default créés pour les nouveaux projets ou dossiers Cloud de votre organisation, vous pouvez configurer les paramètres par défaut de votre organisation.

Vous ne pouvez pas modifier les règles de routage pour le bucket _Required.

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

Vous créez des récepteurs pour acheminer l'intégralité 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 avec quels autres journaux ils sont stockés.

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 journaux vers n'importe quel bucket de journaux afin de choisir le projet Cloud dans lequel vos journaux sont stockés et avec quels autres journaux ils sont stockés.

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 leur suppression ou leur mise à jour, consultez la page Configurer et gérer les buckets de journaux.

Régionalisation

Les buckets de journaux sont des ressources régionales. L'infrastructure qui stocke, indexe et recherche vos journaux se trouve 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.

Lorsque vous créez un bucket de journaux ou définissez une règle régionale au niveau de l'organisation, vous pouvez choisir de stocker vos journaux dans l'une des régions suivantes:

Amériques

Nom de la région Description de la région
northamerica-northeast1 Montréal
northamerica-northeast2 Toronto
southamerica-east1 São Paulo
southamerica-west1 Santiago
us-central1 Iowa
us-east1 Caroline du Sud
us-east4 Virginie du Nord
us-east5 Columbus
us-south1 Dallas
us-west1 Oregon
us-west2 Los Angeles
us-west3 Salt Lake City
us-west4 Las Vegas

Asie-Pacifique

Nom de la région Description de la région
asia-east1 Taïwan
asia-east2 Hong Kong
asia-northeast1 Tokyo
asia-northeast2 Osaka
asia-northeast3 Séoul
asia-south1 Mumbai
asia-south2 Delhi
asia-southeast1 Singapour
asia-southeast2 Jakarta
australia-southeast1 Sydney
australia-southeast2 Melbourne

Europe

Nom de la région Description de la région
europe-central2 Varsovie
europe-north1 Finlande
europe-southwest1 Madrid
europe-west1 Belgique
europe-west2 Londres
europe-west3 Francfort
europe-west4 Pays-Bas
europe-west6 Zurich
europe-west8 Milan
europe-west9 Paris

Moyen-Orient

Nom de la région Description de la région
me-west1 Tel Aviv

Autre

Nom de la région Description de la région
eu Journaux stockés dans des centres de données de l'Union européenne ; aucune garantie de redondance supplémentaire
us Journaux stockés dans des centres de données aux États-Unis ; aucune garantie de redondance supplémentaire
global Journaux stockés dans n'importe quel centre de données au monde ; aucune garantie de redondance supplémentaire

En plus de ces régions, vous pouvez définir l'emplacement sur global, ce qui signifie que vous n'avez pas besoin de spécifier l'emplacement de stockage physique de vos journaux.

Si vous souhaitez appliquer automatiquement une région de stockage particulière aux buckets _Default et _Required créés dans votre organisation, vous pouvez configurer un emplacement de ressources par défaut.

Pour en savoir plus sur la régionalisation des données et sur l'emplacement où vous pouvez stocker vos données de journaux, consultez la page Comprendre les régions de données.

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 des régions spécifiées.

Cloud Logging n'applique pas la règle d'administration nouvellement créée sur les buckets de journaux existants, mais seulement sur les nouveaux buckets.

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

En outre, vous pouvez configurer un emplacement de ressources par défaut pour choisir la région de stockage à appliquer aux buckets _Default et _Required créés dans votre organisation.

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 pour conserver vos journaux 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 depuis un autre emplacement ou non.

Pour savoir comment définir des règles de conservation pour un bucket de journaux, consultez Configurer la conservation personnalisée.

Pour en savoir plus sur les durées de conservation des différents types de journaux, consultez la page Quotas et limites.

Vues de journaux

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

Pour chaque bucket de journaux, Cloud Logging crée automatiquement la vue _AllLogs, qui affiche tous les journaux stockés dans ce bucket. Cloud Logging crée également une vue pour le bucket _Default appelé _Default. La vue _Default du bucket _Default affiche tous les journaux, à l'exception des journaux d'audit des accès aux données. Les vues _AllLogs et _Default ne sont pas modifiables, et vous ne pouvez pas les supprimer.

Les vues de journaux personnalisées vous permettent de contrôler de manière précise et avancée l'accès à vos données de journaux. Prenons l'exemple d'un scénario dans lequel vous stockez tous les journaux de votre organisation dans un projet Cloud central. Étant donné que les buckets de journaux peuvent contenir des journaux issus de plusieurs projets Cloud, vous voudrez peut-être contrôler les projets Cloud que différents utilisateurs peuvent afficher. Les vues de journaux personnalisées vous permettent d'accorder à un utilisateur l'accès aux journaux d'un seul projet Cloud, tandis qu'un autre utilisateur peut accéder aux journaux de tous les projets Cloud.

Pour en savoir plus sur la configuration des vues de journaux, consultez la page Configurer l'accès au niveau du bucket.

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

La section suivante fournit des informations sur l'utilisation des journaux dans l'ensemble Google Cloud.

Métriques basées sur les journaux

Les métriques basées sur les journaux sont des métriques Cloud Monitoring dérivées du contenu des entrées de journal. Par exemple, si Cloud Logging reçoit une entrée de journal pour un projet Cloud qui correspond aux filtres de l'une des métriques du projet Cloud, cette entrée de journal est comptabilisée dans les données de métriques.

Les métriques basées sur les journaux interagissent différemment avec le routage, selon qu'elles sont définies par le système ou par vous. Les sections suivantes décrivent ces différences.

Métriques basées sur les journaux et filtres d'exclusion

Les filtres d'exclusion de récepteur s'appliquent aux métriques basées sur les journaux définies par le système, qui ne comptabilisent que les journaux inclus pour l'ingestion par le projet Cloud.

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

Champ d'application des métriques basées sur les journaux

Les métriques basées sur les journaux définies par le système 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 du projet Cloud dans lequel elles sont reçues.

Les métriques basées sur les journaux définies par l'utilisateur peuvent s'appliquer au niveau du projet Cloud ou d'un bucket de journaux spécifique:

  • Les métriques au niveau du projet sont calculées comme des métriques basées sur les journaux et définies par le système. Ces métriques définies par l'utilisateur ne s'appliquent qu'aux journaux du projet Cloud dans lequel elles sont reçues.
  • Avec les métriques basées sur les journaux au niveau du bucket, vous pouvez créer des métriques basées sur les journaux pouvant évaluer les journaux dans les cas suivants:

    • Journaux acheminés d'un projet à un bucket d'un autre projet.
    • Journaux acheminés dans un bucket via un récepteur agrégé.

Pour en savoir plus, consultez 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 avec IAM

Pour en savoir plus sur la manière dont vous utilisez les rôles et les autorisations IAM (Identity and Access Management) pour contrôler les accès aux données Cloud Logging, consultez la page Contrôle des accès avec IAM.

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é :

Étapes suivantes

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