Ce document explique comment créer et gérer des récepteurs afin d'acheminer les entrées de journal vers des destinations compatibles.
Cloud Logging crée et gère automatiquement un compte de service pour les journaux récepteurs qui acheminent les journaux vers une destination qui n'est pas un bucket de journaux projet Google Cloud en cours. Vous pouvez créer et gérer un compte de service utilisée par les récepteurs dans plusieurs projets. Pour en savoir plus, consultez Configurez des récepteurs de journaux avec des comptes de service gérés par l'utilisateur.
Présentation
Les récepteurs contrôlent la manière dont Cloud Logging achemine les journaux. À l'aide de récepteurs, vous pouvez acheminer tout ou partie de vos journaux les destinations suivantes:
- Bucket Cloud Logging: stockage dans Cloud Logging. Un bucket de journaux peut stocker des entrées de journal reçus par plusieurs projets Google Cloud. Vous pouvez combiner Cloud Logging avec d'autres données en mettant à niveau un bucket de journaux pour qu'il utilise l'Analyse de journaux, puis en créant un ensemble de données BigQuery associé. Pour sur l'affichage des entrées de journal stockées dans des buckets de journaux, consultez Présentation des requêtes et de l'affichage des journaux et afficher les journaux acheminés vers des buckets Cloud Logging.
- Ensemble de données BigQuery: permet de stocker les entrées de journal dans Ensembles de données BigQuery. Vous pouvez utiliser des fonctionnalités d'analyse de big data sur les entrées de journal stockées. Pour combiner vos données Cloud Logging avec d'autres sources de données, nous vous recommandons de mettre à niveau vos buckets de journaux dans l'Analyse de journaux, puis créer un ensemble de données BigQuery associé. Pour en savoir plus sur l'affichage des entrées de journaux acheminées vers BigQuery, consultez Affichez les journaux acheminés vers BigQuery.
- Bucket Cloud Storage: ce bucket permet de stocker les entrées de journal dans Cloud Storage. Journal sont stockées sous forme de fichiers JSON. Pour en savoir plus sur l'affichage des journaux entrées acheminées vers Cloud Storage, consultez la section Afficher les journaux acheminés vers Cloud Storage.
- Sujet Pub/Sub: prend en charge les intégrations tierces. Journal les entrées sont au format JSON, puis acheminées vers sur ce sujet. Pour plus d'informations sur l'affichage des entrées de journal acheminées vers pour Pub/Sub, consultez Affichez les journaux acheminés vers Pub/Sub.
- Splunk: service d'assistance pour Splunk. Vous devez acheminer les entrées de journal vers un sujet Pub/Sub, puis à ce sujet en utilisant Splunk.
- Projet Google Cloud: acheminez les entrées du journal vers un autre projet Google Cloud. Quand ? vous acheminez les entrées de journal vers un projet Google Cloud différent, la destination le routeur de journaux reçoit les entrées de journal et les traite. La récepteurs du projet de destination déterminent la manière dont les entrées de journal reçues sont est acheminée. Error Reporting peut analyser les entrées de journal lorsque la destination achemine ces entrées de journal vers un bucket de journaux appartenant au bucket de destination projet.
- Autres ressources: acheminez vos entrées de journal vers une destination compatible qui se trouve dans un autre projet. Pour en savoir plus sur les chemins à utiliser, consultez Formats du chemin de destination :
Les récepteurs appartiennent à une ressource Google Cloud donnée: projets Google 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. L'entrée de journal est envoyée à la destination associée à chaque récepteur correspondant.
Un récepteur agrégé est un type de récepteur qui combine et achemine les entrées de journal Ressources Google Cloud contenus dans une organisation ou un dossier. Pour savoir comment procéder, consultez Rassemblez et acheminez les journaux au niveau de l'organisation vers des destinations compatibles.
Pour créer et gérer des récepteurs, vous pouvez utiliser la console Google Cloud, l'API Cloud Logging et la Google Cloud CLI. Avec les La console Google Cloud présente les avantages suivants par rapport aux autres méthodes:
- Affichez et gérez tous vos récepteurs au même endroit.
- Prévisualisez les entrées de journal qui correspondent au filtre de votre récepteur avant de créer le récepteur.
- Créez et autorisez des destinations pour vos récepteurs.
Avant de commencer
Les instructions de ce document décrivent comment créer et gérer des récepteurs au niveau au niveau du projet Google Cloud. Vous pouvez également créer des récepteurs non agrégés pour comptes de facturation, dossiers et organisations.
Pour commencer, procédez comme suit:
Assurez-vous de disposer d'un projet Google Cloud avec des journaux que vous pouvez consulter dans Explorateur de journaux :
-
Activez l'API Cloud Logging
-
Pour obtenir les autorisations nécessaires pour créer, modifier ou supprimer un récepteur, procédez comme suit : demandez à votre administrateur de vous accorder le Rédacteur de configuration des journaux (
roles/logging.configWriter
) pour votre projet. Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.Vous pouvez également obtenir les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.
Pour en savoir plus sur l'attribution de rôles IAM, consultez la page le guide du contrôle des accès de Logging.
Vous disposez d'une ressource dans une destination compatible ou vous pouvez en créer une.
Pour acheminer des journaux vers une destination, celle-ci doit exister avant créer le récepteur. Vous pouvez créer la destination dans n'importe quelle projet Google Cloud dans n'importe quelle organisation.
Certaines limites peuvent s'appliquer lorsque vous acheminez vos journaux vers d'autres de destination. Pour en savoir plus, consultez Limites de destination.
Créer un récepteur
Vous trouverez ci-dessous les instructions pour créer un récepteur dans un projet Google Cloud. Au lieu d'un projet Google Cloud, vous pouvez spécifier un compte de facturation, dossier ou organisation.
Vous pouvez créer jusqu'à 200 récepteurs par projet Google Cloud.
Après avoir créé le récepteur, assurez-vous que Logging dispose des autorisations appropriées pour écrire des journaux dans la destination du récepteur ; voir Définir les autorisations des destinations
Pour créer un récepteur, procédez comme suit :
Console
-
Dans la console Google Cloud, accédez à la page Routeur de journaux :
Accéder au routeur de journaux
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.
Sélectionnez un projet Google Cloud existant.
Cliquez sur Créer un récepteur.
Dans le panneau Détails du récepteur, saisissez les informations suivantes :
Nom du récepteur : indiquez un identifiant pour le récepteur. Notez qu'après avoir créé le récepteur, vous ne pouvez pas le renommer, mais vous pouvez le supprimer et en créer un autre.
Description du récepteur (facultatif) : décrivez l'objectif ou le cas d'utilisation du récepteur.
Dans le panneau Destination du récepteur, sélectionnez le service du récepteur et via le menu Sélectionner le service de récepteur.
Pour acheminer les journaux vers un service du même projet Google Cloud, sélectionnez l'une des options suivantes:
- Bucket Cloud Logging : sélectionnez ou créez un bucket Logging.
- Ensemble de données BigQuery: sélectionnez ou créez l'ensemble de données pour recevoir les journaux acheminés. Vous pouvez également utiliser des tables partitionnées.
- Bucket Cloud Storage : sélectionnez ou créez le bucket Cloud Storage spécifique qui reçoit les journaux routés.
- Sujet Pub/Sub: sélectionnez ou créez le sujet pour recevoir les journaux acheminés.
- Splunk : sélectionnez le sujet Pub/Sub du service Splunk.
- Google Cloud project (Projet Google Cloud) : sélectionnez ou créez le projet Google Cloud. pour recevoir les journaux acheminés.
- Autre ressource: sélectionnez cette option pour acheminer vos entrées de journal vers une destination compatible qui se trouve dans un autre projet. Pour des informations sur le chemin d'accès consultez la section Formats du chemin de destination.
Dans le panneau Sélectionner les journaux à inclure dans le récepteur, procédez comme suit :
Dans le champ Créer un filtre d'inclusion, saisissez une expression de filtre. correspondant aux entrées de journal que vous souhaitez inclure. Pour en savoir plus sur la syntaxe d'écriture des filtres, consultez Langage de requête Logging
Si vous ne définissez pas de filtre, tous les journaux de la ressource sélectionnée sont acheminé vers la destination.
Par exemple, vous pouvez créer un filtre pour acheminer tous les journaux d'accès aux données vers un seul bucket Logging. Ce filtre se présente comme suit :
log_id("cloudaudit.googleapis.com/data_access") OR log_id("externalaudit.googleapis.com/data_access")
Notez que la longueur d'un filtre ne peut pas dépasser 20 000 caractères.
Pour vérifier que le filtre saisi est correct, sélectionnez Prévisualiser les journaux. L'explorateur de journaux s'ouvre dans un nouvel onglet avec le filtre pré-rempli.
(Facultatif) Dans le panneau Sélectionner les journaux à exclure du récepteur, effectuez les actions suivantes : les éléments suivants:
Dans le champ Nom du filtre d'exclusion, saisissez un nom.
Dans la section Créer un filtre d'exclusion, saisissez une expression de filtre correspondant aux entrées de journal que vous souhaitez exclure. Vous pouvez également utiliser la fonction
sample
pour sélectionner une partie des entrées de journal à exclure.
Vous pouvez créer jusqu'à 50 filtres d'exclusion par récepteur. Notez que la longueur d'un filtre ne peut pas dépasser 20 000 caractères.
Cliquez sur Créer un récepteur.
API
Pour créer un récepteur de journaux dans votre projet Google Cloud, utilisez projects.sinks.create dans l'API Logging. Dans l'objet LogSink, indiquez les valeurs obligatoires appropriées dans le corps de la requête de la méthode :
name
: identifiant du récepteur. Notez qu'après avoir créé le récepteur, vous ne pouvez pas le renommer, mais vous pouvez le supprimer et en créer un autre.destination
: service et destination vers lesquels vous souhaitez acheminer vos journaux. Pour acheminer des journaux vers un autre projet ou vers une destination se trouve dans un autre projet, définissez le champdestination
avec le chemin approprié, comme décrit dans la section Formats des chemins de destination.Par exemple, si la destination du récepteur est un ensemble de données,
destination
se présente comme suit:bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID
Dans l'objet LogSink, indiquez les informations facultatives appropriées :
filter
: définissez la propriétéfilter
pour qu'elle corresponde aux entrées de journal que vous souhaitez inclure dans votre récepteur. Si vous ne définissez pas de filtre, tous les journaux de votre projet Google Cloud sont acheminé vers la destination. Notez que la longueur d'un filtre ne peut pas dépasser 20 000 caractères.exclusions
: définissez cette propriété pour qu'elle corresponde aux entrées de journal que vous souhaitez exclure de votre récepteur. Vous pouvez également utiliser la fonctionsample
pour sélectionner une partie des entrées de journal à exclure. Vous pouvez créer jusqu'à 50 filtres d'exclusion par récepteur.description
: définissez cette propriété pour décrire l'objectif ou le cas d'utilisation du récepteur.
Appelez la méthode projects.sinks.create pour créer le récepteur.
Si la réponse de l'API contient une clé JSON portant le libellé
"writerIdentity"
, puis accorder au compte de service du récepteur l'autorisation d'écrire la destination du récepteur. Pour plus d'informations, consultez la section Définir les autorisations des destinations.Vous n'avez pas besoin de définir d'autorisations de destination lorsque la réponse de l'API ne contient pas de clé JSON libellée
"writerIdentity"
.
Pour en savoir plus sur la création de récepteurs à l'aide de l'API Logging, consultez la documentation de référence sur LogSink.
gcloud
Pour créer un récepteur, exécutez la commande gcloud logging sinks create
suivante.
Indiquez les valeurs appropriées pour les variables dans la commande comme suit :
- SINK_NAME : identifiant du récepteur. Notez qu'après avoir créé le récepteur, vous ne pouvez pas le renommer, mais vous pouvez le supprimer et en créer un autre.
SINK_DESTINATION : service et destination vers lesquels vous souhaitez acheminer vos journaux. Pour acheminer les journaux vers un autre projet destination qui se trouve dans un autre projet, définissez SINK_DESTINATION par le chemin approprié, comme décrit dans la section Formats des chemins de destination.
Par exemple, si la destination du récepteur est un ensemble de données BigQuery, SINK_DESTINATION se présente comme suit:
bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID
OPTIONAL_FLAGS inclut les options suivantes :
--log-filter
: cette option permet de définir un filtre correspondant aux entrées de journal que vous souhaitez inclure dans votre récepteur. Si vous ne définir un filtre, tous les journaux de votre projet Google Cloud sont acheminés la destination.--exclusion
: cette option permet de définir un filtre d'exclusion pour les entrées de journal que vous souhaitez exclure de votre récepteur. Vous pouvez également utiliser la fonctionsample
pour sélectionner une partie des entrées de journal à exclure. Cette option peut être répétée. Vous pouvez créer jusqu'à 50 filtres d'exclusion par récepteur.--description
: utilisez cette option pour décrire l'objectif ou le cas d'utilisation du récepteur.
gcloud logging sinks create SINK_NAME SINK_DESTINATION OPTIONAL_FLAGS
Par exemple, pour créer un récepteur dans un bucket Logging, votre commande pourrait ressembler à ceci :
gcloud logging sinks create my-sink logging.googleapis.com/projects/myproject123/locations/global/buckets/my-bucket \ --log-filter='logName="projects/myproject123/logs/matched"' --description="My first sink"
Pour en savoir plus sur la création de récepteurs à l'aide du module
Google Cloud CLI, y compris d'autres options et exemples, consultez la
gcloud logging sinks
.
Les nouveaux récepteurs de journaux vers les buckets Cloud Storage peuvent prendre plusieurs heures commencer à acheminer les journaux. Les récepteurs vers Cloud Storage sont traités toutes les heures d'autres types de destination sont traités en temps réel.
Les récepteurs ne définissent pas le schéma des ensembles de données BigQuery. À la place, la première entrée de journal reçue par BigQuery détermine pour la table de destination. Pour en savoir plus, consultez la section Schéma BigQuery des journaux routés.
Pour en savoir plus sur l'affichage des journaux dans les destinations des récepteurs, consultez la page Affichez les journaux acheminés vers des buckets Cloud Logging.
Après avoir créé le récepteur, vous pouvez afficher le nombre et le volume des entrées de journal reçues à l'aide des métriques logging.googleapis.com/exports/
.
Si vous recevez des notifications d'erreur, consultez la section Résoudre les problèmes de routage et de récepteur.
N'incluez pas d'informations sensibles dans les filtres de récepteurs. Les filtres de récepteurs sont traités comme des données de service.
Formats du chemin de destination
Si vous effectuez le routage vers une destination qui se trouve dans un autre projet, vous devez fournissent les API Logging, BigQuery Cloud Storage, ou service et destination Pub/Sub, informations:
Acheminer les entrées de journal vers un bucket de journaux Cloud Logging qui se trouve dans un autre projet Google Cloud, la destination du récepteur est suivantes:
logging.googleapis.com/projects/DESTINATION_PROJECT_ID/locations/LOCATION/buckets/BUCKET_NAME
Pour acheminer les entrées de journal vers un autre projet Google Cloud, le chemin d'accès de la destination du récepteur est le suivant:
logging.googleapis.com/projects/DESTINATION_PROJECT_ID
Pour acheminer les entrées de journal vers un ensemble de données BigQuery, le récepteur la destination est la suivante:
bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID
Pour acheminer les entrées de journal vers un bucket Cloud Storage, le récepteur la destination est la suivante:
storage.googleapis.com/BUCKET_NAME
Pour acheminer les entrées de journal vers un sujet Pub/Sub, le récepteur la destination est la suivante:
pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID
Gérer les récepteurs
Une fois les récepteurs créés, vous pouvez effectuer les actions suivantes sur ceux-ci:
- Afficher les détails du récepteur
- Mettre à jour le récepteur
- Désactiver le récepteur
- Supprimer le récepteur
- Résoudre les problèmes du récepteur
- Afficher le volume et les taux d'erreur des journaux de récepteurs
Avant de supprimer un récepteur, tenez compte des points suivants:
- Vous ne pouvez pas supprimer les récepteurs
_Default
et_Required
, mais vous pouvez Désactivez les récepteurs_Default
pour arrêter d'acheminer les journaux vers_Default
Buckets Logging. - Une fois le récepteur supprimé, il arrête le routage des entrées de journal.
- Si le récepteur dispose d'un compte de service dédié, la suppression de ce récepteur supprime le compte de service. Récepteurs créés avant le Depuis le 22 mai 2023, les comptes de service sont dédiés. Récepteurs créés à compter du 22 mai 2023 disposent d'un compte de service partagé. La suppression du récepteur ne supprime pas le compte de service partagé.
L'application des modifications apportées à un récepteur peut prendre quelques minutes.
Vous trouverez ci-dessous des instructions pour gérer un récepteur dans un projet Google Cloud. Au lieu d'un projet Google Cloud, vous pouvez spécifier un compte de facturation, d'un dossier ou d'une organisation:
Console
-
Dans la console Google Cloud, accédez à la page Routeur de journaux :
Accéder au routeur de journaux
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.
Sélectionnez le projet Google Cloud contenant votre à l'aide du sélecteur de ressources depuis n'importe quel emplacement Console Google Cloud:
Pour afficher vos récepteurs agrégés, sélectionnez l'organisation, le dossier ou le compte de facturation qui contient les récepteurs.
La page Routeur de journaux contient un tableau récapitulatif des récepteurs. Chaque ligne du tableau contient des informations sur les propriétés d'un récepteur :
- Activé : indique si l'état du récepteur est activé ou désactivé.
- Type : service de destination du récepteur. Par exemple,
Cloud Logging bucket
. - Nom : identifiant du récepteur, tel qu'il est fourni lors de la création du récepteur ; par exemple
_Default
. - Description : description du récepteur, telle qu'elle vous a été fournie lors de sa création.
- Destination : nom complet de la destination à laquelle les entrées de journal routées seront envoyées.
- Créé : date et heure de création du récepteur.
- Dernière mise à jour: date et heure de la dernière modification du récepteur.
Pour chaque ligne du tableau, le menu more_vert Autres actions propose les options suivantes:
- Afficher les détails du récepteur : affiche le nom, la description, le service, la destination, ainsi que les filtres d'inclusion et d'exclusion du récepteur. Sélectionnez Modifier pour ouvrir le panneau Modifier le récepteur.
- Modifier le récepteur : ouvre le panneau Modifier le récepteur dans lequel vous pouvez mettre à jour les paramètres du récepteur.
- Désactiver le récepteur : permet de désactiver le récepteur et d'arrêter le routage des journaux vers la destination du récepteur. Pour en savoir plus sur la désactivation des récepteurs, consultez Arrêtez de stocker des journaux dans des buckets de journaux.
- Activer le récepteur : permet d'activer un récepteur désactivé et de redémarrer le routage des journaux vers la destination du récepteur.
- Supprimer le récepteur : permet de supprimer le récepteur et d'arrêter le routage des journaux vers la destination du récepteur.
- Résoudre les problèmes du récepteur: ouvre l'explorateur de journaux dans lequel vous pouvez résoudre les problèmes les erreurs avec le récepteur.
- Afficher le volume et les taux d'erreur des journaux du récepteur: ouvre l'Explorateur de métriques. qui vous permet d'afficher et d'analyser les données du récepteur.
Vous pouvez cliquer sur les noms des colonnes pour trier les données par ordre croissant ou décroissant.
API
Pour afficher les récepteurs de votre projet Google Cloud, appelez
projects.sinks.list
Pour afficher les détails d'un récepteur, appelez
projects.sinks.get
.Pour mettre à jour un récepteur, appelez
projects.sink.update
.Vous pouvez mettre à jour la destination, les filtres et la description d'un récepteur. Vous pouvez également désactiver ou réactiver le récepteur.
Pour désactiver un récepteur, appelez
projects.sink.update
et définissez la propriétédisabled
surtrue
.Pour réactiver le récepteur, appelez
projects.sink.update
et définissez la propriétédisabled
surfalse
.Pour supprimer un récepteur, appelez
projects.sinks.delete
.Pour en savoir plus sur l'une de ces méthodes de gestion des récepteurs à l'aide de l'API Logging, consultez la documentation de référence sur LogSink.
gcloud
Pour afficher la liste des récepteurs de votre projet Google Cloud, utilisez le
gcloud logging sinks list
qui correspond à la méthode de l'API Loggingprojects.sinks.list
:gcloud logging sinks list
Pour afficher la liste des récepteurs agrégés, utilisez l'option appropriée pour spécifier la ressource contenant le récepteur. Par exemple, si vous avez créé le récepteur au niveau de l'organisation, utilisez l'option
--organization=ORGANIZATION_ID
pour répertorier les récepteurs de l'organisation.Pour décrire un récepteur, utilisez la commande
gcloud logging sinks describe
, qui correspond à la méthode de l'API Loggingprojects.sinks.get
:gcloud logging sinks describe SINK_NAME
Pour mettre à jour un récepteur, utilisez la commande
gcloud logging sinks update
, qui correspond à la méthode APIprojects.sink.update
:Vous pouvez mettre à jour un récepteur pour modifier la destination, les filtres et la description, ou pour désactiver ou réactiver le récepteur :
gcloud logging sinks update SINK_NAME NEW_DESTINATION --log-filter=NEW_FILTER
Omettez NEW_DESTINATION ou
--log-filter
si ces parties ne changent pas.Par exemple, pour mettre à jour la destination du récepteur nommé
my-project-sink
vers une nouvelle destination de bucket Cloud Storage nomméemy-second-gcs-bucket
, la commande se présente comme suit :gcloud logging sinks update my-project-sink storage.googleapis.com/my-second-gcs-bucket
Pour désactiver un récepteur, utilisez la commande
gcloud logging sinks update
, qui correspond à la méthode APIprojects.sink.update
, et ajoutez l'option--disabled
:gcloud logging sinks update _Default --disabled
Pour réactiver le récepteur, utilisez la commande
gcloud logging sinks update
, supprimez l'option--disabled
et ajoutez l'option--no-disabled
:gcloud logging sinks update _Default --no-disabled
Pour supprimer un récepteur, utilisez la commande
gcloud logging sinks delete
, qui correspond à la méthode APIprojects.sinks.delete
:gcloud logging sinks delete SINK_NAME
Pour en savoir plus sur la gestion des récepteurs à l'aide du module Google Cloud CLI, consultez la
gcloud logging sinks
.
Arrêter de stocker des journaux dans des buckets de journaux
Pour chaque projet Google Cloud, Logging crée automatiquement
deux buckets de journaux: _Required
et _Default
.
Logging crée automatiquement deux récepteurs de journaux, _Required
et _Default
, qui acheminent les journaux vers les buckets nommés respectivement.
Vous ne pouvez pas désactiver le récepteur _Required
. Vous pouvez
désactivez le récepteur _Default
pour empêcher le stockage des journaux dans le
_Default
. Vous pouvez également désactiver les récepteurs définis par l'utilisateur.
Lorsque vous désactivez tous les récepteurs de votre projet Google Cloud qui envoient des journaux
dans le bucket _Default
,
aucun nouveau journal n'est stocké dans ce bucket de journaux.
Le bucket _Default
est vide lorsque tous les journaux précédemment stockés dans le
_Default
bucket a rempli les conditions
durée de conservation.
Pour désactiver les récepteurs de votre projet Google Cloud qui acheminent les journaux vers _Default
, procédez comme suit:
Console
-
Dans la console Google Cloud, accédez à la page Routeur de journaux :
Accéder au routeur de journaux
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.
Pour rechercher l'ensemble des récepteurs qui acheminent les journaux vers le bucket
_Default
, filtrez-les par destination, puis saisissez_Default
.Pour chaque récepteur, sélectionnez Menu more_vert, puis puis sélectionnez Désactiver le récepteur.
Les récepteurs sont maintenant désactivés et les récepteurs de votre projet Google Cloud
pour acheminer les journaux vers le bucket _Default
.
Pour réactiver un récepteur désactivé et redémarrer les journaux de routage vers la destination du récepteur, procédez comme suit :
-
Dans la console Google Cloud, accédez à la page Routeur de journaux :
Accéder au routeur de journaux
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.
Pour rechercher l'ensemble des récepteurs désactivés précédemment configurés pour acheminer les journaux vers le bucket
_Default
, filtrez les récepteurs par destination, puis saisissez_Default
.Pour chaque récepteur, sélectionnez Menu more_vert, puis Sélectionnez Activer le récepteur.
API
Pour afficher les récepteurs de votre projet Google Cloud, appelez la fonction Méthode de l'API Logging
projects.sinks.list
Identifiez les récepteurs qui sont acheminés vers le bucket
_Default
.Par exemple, pour désactiver le récepteur
_Default
, appelezprojects.sink.update
et définissez la propriétédisabled
surtrue
.
Le récepteur _Default
est maintenant désactivé ; il n'achemine plus les journaux vers le bucket _Default
.
Pour désactiver les autres récepteurs dans votre projet Google Cloud qui acheminent
dans le bucket _Default
, répétez les étapes ci-dessus.
Pour réactiver un récepteur, appelez projects.sink.update
et définissez la propriété disabled
sur false
.
gcloud
Pour afficher la liste des récepteurs de votre projet Google Cloud, utilisez le
gcloud logging sinks list
qui correspond à la méthode de l'API Loggingprojects.sinks.list
:gcloud logging sinks list
Identifiez les récepteurs qui sont acheminés vers le bucket
_Default
. Pour décrire un récepteur, y compris son nom de destination, utilisez la commandegcloud logging sinks describe
, qui correspond à la méthode API Logging.projects.sinks.get
:gcloud logging sinks describe SINK_NAME
Par exemple, pour désactiver le récepteur
_Default
, utilisez la commandegcloud logging sinks update
et ajoutez l'option--disabled
:gcloud logging sinks update _Default --disabled
Le récepteur _Default
est maintenant désactivé ; il n'achemine plus les journaux vers le bucket _Default
.
Pour désactiver les autres récepteurs dans votre projet Google Cloud qui acheminent
dans le bucket _Default
, répétez les étapes ci-dessus.
Pour réactiver un récepteur, utilisez la commande gcloud logging sinks update
, supprimez l'option --disabled
et ajoutez l'option --no-disabled
:
gcloud logging sinks update _Default --no-disabled
Définir les autorisations de la destination
Cette section explique comment accorder à Logging les autorisations Identity and Access Management pour écrire des journaux dans la destination de votre récepteur. Pour obtenir la liste complète des rôles et des autorisations dans Logging, consultez la page Contrôle des accès.
Cloud Logging crée un compte de service partagé pour une ressource lorsqu'un le récepteur de journaux est créé, sauf si le compte de service requis existe déjà. Le compte de service peut exister, car le même compte de service est utilisé pour tous les récepteurs de la ressource sous-jacente. Les ressources peuvent être un projet Google Cloud, une organisation, un dossier ou un compte de facturation.
L'identité du rédacteur d'un récepteur est l'identifiant du service.
associé à ce récepteur. Tous les récepteurs ont une identité de rédacteur, sauf
pour les récepteurs qui écrivent dans un bucket de journaux du projet Google Cloud actuel.
Lorsque la destination d'un récepteur est un bucket de journaux
projet Google Cloud, le récepteur ne nécessite aucune opération
les autorisations de destination. Par conséquent, la valeur du champ Writer identité (Identité du rédacteur)
est répertorié comme None
dans la console,
et qu'elles ne sont pas signalées par l'API ni par les commandes de la Google Cloud CLI.
Vous trouverez ci-dessous des instructions pour configurer Google Cloud au niveau d'un projet. pour que votre récepteur puisse acheminer les données vers sa destination. Au lieu d'un un projet Google Cloud, vous pouvez spécifier un compte de facturation, un dossier organisation:
Console
Pour obtenir l'identité du rédacteur du récepteur (une adresse e-mail) à partir du un nouveau récepteur, procédez comme suit:
-
Dans la console Google Cloud, accédez à la page Routeur de journaux :
Accéder au routeur de journaux
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.
Sélectionnez Menu more_vert, puis Afficher les détails du récepteur L'identité du rédacteur apparaît dans Détails du récepteur.
-
Si la valeur du champ
writerIdentity
contient une adresse e-mail, puis passez à l'étape suivante. Lorsque cette valeur estNone
, vous n'avez pas besoin de configurer les autorisations de destination pour le récepteur.Pour copier l'identité du rédacteur du récepteur dans votre presse-papiers, cliquez sur content_copy Copier.
Si vous disposez d'un accès Propriétaire à la destination, ajoutez le service en tant que compte principal IAM dans le projet de destination:
- Pour les destinations Cloud Storage, ajoutez l'identité du rédacteur du récepteur
en tant que compte principal à l'aide d'IAM,
Rôle de créateur des objets Storage
(
roles/storage.objectCreator
). - Pour les destinations BigQuery, ajoutez l'identité du rédacteur du récepteur
en tant que compte principal à l'aide d'IAM,
Rôle d'éditeur de données BigQuery
(
roles/bigquery.dataEditor
). - Pour les destinations Pub/Sub, y compris Splunk, ajoutez l'identité du rédacteur du récepteur
en tant que compte principal à l'aide d'IAM,
Rôle d'éditeur Pub/Sub
(
roles/pubsub.publisher
). - Pour les destinations des buckets Logging dans différentes
projets Google Cloud, ajoutez l'identité du rédacteur du récepteur en tant que compte principal
à l'aide d'IAM, puis lui accorder
Rôle Rédacteur de bucket de journaux
(
roles/logging.bucketWriter
). - Pour les destinations de projets Google Cloud, ajoutez le
en tant que compte principal à l'aide d'IAM, puis attribuez-lui
Rôle Rédacteur de journaux
(
roles/logging.logWriter
). Plus précisément, le compte principal a besoin Autorisationlogging.logEntries.route
.
- Pour les destinations Cloud Storage, ajoutez l'identité du rédacteur du récepteur
en tant que compte principal à l'aide d'IAM,
Rôle de créateur des objets Storage
(
API
Appelez la méthode API projects.sinks.list pour répertorier les récepteurs de votre projet Google Cloud.
Recherchez le récepteur dont vous souhaitez modifier les autorisations et identifiez, le cas échéant, contiennent une clé JSON libellée
"writerIdentity"
, puis continuez à l'étape suivante. Lorsque les détails n'incluent pas de"writerIdentity"
, vous n'avez pas besoin de configurer d'autorisations de destination pour le récepteur.Si vous disposez d'un accès Propriétaire IAM à la destination, ajoutez compte de service vers la destination en procédant comme suit:
- Pour les destinations Cloud Storage, ajoutez l'identité du rédacteur du récepteur
en tant que compte principal à l'aide d'IAM,
Rôle de créateur des objets Storage
(
roles/storage.objectCreator
). - Pour les destinations BigQuery, ajoutez l'identité du rédacteur du récepteur
en tant que compte principal à l'aide d'IAM,
Rôle d'éditeur de données BigQuery
(
roles/bigquery.dataEditor
). - Pour les destinations Pub/Sub, y compris Splunk, ajoutez l'identité du rédacteur du récepteur
en tant que compte principal à l'aide d'IAM,
Rôle d'éditeur Pub/Sub
(
roles/pubsub.publisher
). - Pour les destinations des buckets Logging dans différentes
projets Google Cloud, ajoutez l'identité du rédacteur du récepteur en tant que compte principal
à l'aide d'IAM, puis lui accorder
Rôle Rédacteur de bucket de journaux
(
roles/logging.bucketWriter
). - Pour les destinations de projets Google Cloud, ajoutez le
en tant que compte principal à l'aide d'IAM, puis attribuez-lui
Rôle Rédacteur de journaux
(
roles/logging.logWriter
). Plus précisément, le compte principal a besoin Autorisationlogging.logEntries.route
.
- Pour les destinations Cloud Storage, ajoutez l'identité du rédacteur du récepteur
en tant que compte principal à l'aide d'IAM,
Rôle de créateur des objets Storage
(
gcloud
Obtenez le compte de service à partir du champ
writerIdentity
de votre récepteur :gcloud logging sinks describe SINK_NAME
Recherchez le récepteur dont vous souhaitez modifier les autorisations et identifiez, le cas échéant, contiennent une ligne
writerIdentity
, puis continuez à l'étape suivante. Lorsque les détails n'incluent pas dewriterIdentity
, vous n'avez pas besoin de configurer d'autorisations de destination l'évier.La valeur du champ SERVICE_ACCT_NAME dans correspond à l'identité de l'auteur, qui se présente comme suivantes:
serviceAccount:service-123456789012@gcp-sa-logging.iam.gserviceaccount.com
Si vous disposez d'un accès Propriétaire IAM à la destination, ajoutez compte de service vers la destination en procédant comme suit:
- Pour les destinations Cloud Storage, ajoutez l'identité du rédacteur du récepteur
en tant que compte principal à l'aide d'IAM,
Rôle de créateur des objets Storage
(
roles/storage.objectCreator
). - Pour les destinations BigQuery, ajoutez l'identité du rédacteur du récepteur
en tant que compte principal à l'aide d'IAM,
Rôle d'éditeur de données BigQuery
(
roles/bigquery.dataEditor
). - Pour les destinations Pub/Sub, y compris Splunk, ajoutez l'identité du rédacteur du récepteur
en tant que compte principal à l'aide d'IAM,
Rôle d'éditeur Pub/Sub
(
roles/pubsub.publisher
). - Pour les destinations des buckets Logging dans différentes
projets Google Cloud, ajoutez l'identité du rédacteur du récepteur en tant que compte principal
à l'aide d'IAM, puis lui accorder
Rôle Rédacteur de bucket de journaux
(
roles/logging.bucketWriter
). - Pour les destinations de projets Google Cloud, ajoutez le
en tant que compte principal à l'aide d'IAM, puis attribuez-lui
Rôle Rédacteur de journaux
(
roles/logging.logWriter
). Plus précisément, le compte principal a besoin Autorisationlogging.logEntries.route
.
Par exemple, pour accorder le rôle Rédacteur de journaux (
roles/logging.logWriter
) au compte de serviceservice-123456789012@gcp-sa-logging.iam.gserviceaccount.com
dans projetmy-test-project
, exécutez la commande suivante:gcloud projects add-iam-policy-binding my-test-project --member='serviceAccount:service-123456789012@gcp-sa-logging.iam.gserviceaccount.com' --role='roles/logging.logWriter'
- Pour les destinations Cloud Storage, ajoutez l'identité du rédacteur du récepteur
en tant que compte principal à l'aide d'IAM,
Rôle de créateur des objets Storage
(
Limites de la destination
Selon la destination vers laquelle vous acheminez vos journaux, limites.
Acheminer le trafic vers les buckets de journaux dans différents projets Google Cloud
Les limites suivantes s'appliquent lorsque vous acheminez vos journaux vers des buckets de journaux différents projets Google Cloud:
- Error Reporting est désactivé pour les journaux stockés dans des buckets de journaux qui utilisent de chiffrement gérées par le client.
Acheminer le trafic vers différents projets Google Cloud
Les limites suivantes s'appliquent lorsque vous acheminez vos journaux vers différents Projets Google Cloud:
Il y a une limite à un saut. Par exemple, si vous acheminez les entrées de journal d'un projet vers le projet B, vous ne pouvez pas acheminer les entrées de journal du projet B vers projet différent.
Les journaux d'audit ne sont pas acheminés vers le bucket
_Required
dans la destination projet. Vous devez créer un autre récepteur ou bucket pour les stocker.Si l'organisation ou le dossier contenant le projet Google Cloud des récepteurs agrégés existants, les journaux ne sont pas acheminés par ces récepteurs agrégés.
Exemples de code
Pour configurer les récepteurs dans le langage de votre choix à l'aide du code de la bibliothèque cliente, consultez la page Bibliothèques clientes Logging : récepteurs de journaux.
Exemples de filtres
Voici quelques exemples de filtres particulièrement utiles pour créer des récepteurs.
Pour obtenir des exemples supplémentaires pouvant être utiles lors de la création de vos filtres d'inclusion et de vos filtres d'exclusion, consultez la section Exemples de requêtes.
Restaurer le filtre de récepteur _Default
Si vous avez modifié le filtre du récepteur _Default
, vous souhaitez peut-être en restaurer le filtre par défaut. Pour ce faire, saisissez le filtre d'inclusion suivant :
NOT log_id("cloudaudit.googleapis.com/activity") AND NOT \
log_id("externalaudit.googleapis.com/activity") AND NOT \
log_id("cloudaudit.googleapis.com/system_event") AND NOT \
log_id("externalaudit.googleapis.com/system_event") AND NOT \
log_id("cloudaudit.googleapis.com/access_transparency") AND NOT \
log_id("externalaudit.googleapis.com/access_transparency")
Exclure les journaux de conteneurs et de pods Google Kubernetes Engine
Pour exclure les journaux de conteneurs et de pods Google Kubernetes Engine
Système GKE namespaces
, utilisez le filtre suivant:
resource.type = ("k8s_container" OR "k8s_pod")
resource.labels.namespace_name = (
"cnrm-system" OR
"config-management-system" OR
"gatekeeper-system" OR
"gke-connect" OR
"gke-system" OR
"istio-system" OR
"knative-serving" OR
"monitoring-system" OR
"kube-system")
Pour exclure les journaux de nœud Google Kubernetes Engine pour le système GKE logNames
, utilisez le filtre suivant :
resource.type = "k8s_node"
logName:( "logs/container-runtime" OR
"logs/docker" OR
"logs/kube-container-runtime-monitor" OR
"logs/kube-logrotate" OR
"logs/kube-node-configuration" OR
"logs/kube-node-installation" OR
"logs/kubelet" OR
"logs/kubelet-monitor" OR
"logs/node-journal" OR
"logs/node-problem-detector")
Pour afficher le volume d'un nœud Google Kubernetes Engine, un pod et les journaux de conteneurs stockés dans des buckets de journaux, Explorateur de métriques dans Cloud Monitoring.
Exclure les journaux Dataflow non requis pour assurer la compatibilité
Pour exclure les journaux Dataflow qui ne sont pas requis pour la compatibilité, utilisez le filtre suivant :
resource.type="dataflow_step"
labels."dataflow.googleapis.com/log_type"!="system" AND labels."dataflow.googleapis.com/log_type"!="supportability"
Pour afficher le volume de journaux Dataflow stockés dans des buckets de journaux, utilisez Explorateur de métriques dans Cloud Monitoring.
Assistance
Avec Cloud Logging, vous pouvez exclure des journaux stockées dans un bucket de journaux, vous pouvez envisager de conserver des journaux qui facilitent la prise en charge. Ces journaux peuvent vous aider à identifier et résoudre rapidement les problèmes liés à vos applications
Par exemple, les journaux système GKE sont utiles pour résoudre les problèmes liés à vos applications et clusters GKE, car ils sont générés pour les événements qui se produisent dans votre cluster. Ces journaux peuvent vous aider à déterminer si votre code d'application ou le cluster GKE sous-jacent est à l'origine de l'erreur de l'application. Les journaux système GKE incluent également les journaux d'audit Kubernetes générés par le composant de serveur de l'API Kubernetes, qui inclut les modifications apportées à l'aide de la commande kubectl et les événements Kubernetes.
Pour Dataflow, nous vous recommandons d'écrire au minimum les valeurs
journaux (labels."dataflow.googleapis.com/log_type"="system"
) et la compatibilité
journaux (labels."dataflow.googleapis.com/log_type"="supportability"
) dans
les buckets de journaux. Ces journaux
sont essentiels pour que les développeurs puissent observer et résoudre les Dataflow liés à leur
et les utilisateurs ne pourront peut-être pas utiliser
Informations sur le job pour afficher les journaux du job.
Étape suivante
Si vous rencontrez des problèmes lorsque vous utilisez des récepteurs pour acheminer les journaux, consultez Résoudre les problèmes liés aux journaux de routage
Pour savoir comment afficher vos journaux routés dans leur destination, et découvrir comment les journaux sont formatés et organisés, consultez la page Afficher les journaux dans les destinations de récepteur.
Pour en savoir plus sur l'interrogation et le filtrage avec le Langage de requête Logging, consultez Langage de requête Logging