Ce document explique comment configurer un projet Google Cloud pour surveiller ou afficher les données de télémétrie de plusieurs projets Google Cloud . Si vous souhaitez uniquement surveiller ou afficher les données stockées dans un seul projetGoogle Cloud , vous n'avez pas besoin d'effectuer de configuration, car les outils de visualisation et d'analyse sont configurés pour utiliser les données stockées dans le projet Google Cloud sélectionné par le sélecteur de projet. Toutefois, si les données de télémétrie que vous souhaitez afficher ou analyser proviennent de plusieurs projets, vous devez effectuer certaines activités de configuration pour obtenir une vue agrégée de ces données.
À propos des périmètres d'observabilité
Les outils d'analyse et de visualisation de Google Cloud Observability s'appuient sur des portées spécifiques aux types de données pour déterminer les données à afficher ou à analyser. Un champ d'application définit les ressources pour lesquelles un type de données spécifique est recherché. À l'exception des données de métriques, vos rôles Identity and Access Management (IAM) dans les projets et les vues de journaux recherchés déterminent les données affichées.
Vous pouvez configurer les niveaux suivants :
- Périmètre d'observabilité
Ce champ d'application contrôle la façon dont les pages de l'explorateur et du tableau de bord recherchent les données à afficher. Chaque projet Google Cloud contient un seul champ d'application de l'observabilité, qui liste le champ d'application des journaux par défaut, le champ d'application des métriques et le champ d'application des traces par défaut.
Nous vous recommandons de configurer les composants du champ d'application de l'observabilité dans les scénarios suivants :
- Vous enregistrez les applications avec App Hub. Il peut s'agir d'applications que vous enregistrez vous-même ou de celles que vous déployez à l'aide de l'Application Design Center.
- Lorsque vous souhaitez obtenir une vue unifiée des données de télémétrie stockées dans différents projets Google Cloud .
Si vous ne configurez pas les composants du champ d'application de l'observabilité pour un projet, la page Explorateur de journaux affiche les données de journaux provenant du projet. Les pages Explorateur de métriques et Explorateur de traces ne peuvent afficher que les données stockées dans le projet. De plus, les règles d'alerte ne peuvent surveiller que les données stockées dans le projet.
- Champs d'application de journaux
Configurez le champ d'application des journaux par défaut d'un projet afin que les données que vous souhaitez généralement afficher s'affichent lorsque vous ouvrez la page Explorateur de journaux. Un champ d'application des journaux peut lister des projets, des dossiers, des organisations et des vues de journaux. Par exemple, vous pouvez définir le champ d'application du journal par défaut pour lister une vue de journal qui, lorsqu'elle est interrogée, renvoie les données de journal d'une application App Hub.
Vous pouvez créer plusieurs niveaux de journalisation. Lorsque vous utilisez la page Explorateur de journaux, vous pouvez sélectionner un autre champ d'application des journaux. La page recherche alors les ressources listées dans le champ d'application sélectionné, puis actualise l'affichage.
Nous vous recommandons de configurer le champ d'application du journal par défaut dans les scénarios suivants :
- Vous acheminez les données de journaux vers un bucket de journaux centralisé.
- Vous acheminez les données de journaux vers d'autres projets ou vers des buckets de journaux stockés par un autre projet.
- Vous utilisez des vues de journaux.
Pour en savoir plus, consultez la section Créer et gérer des champs d'action de journaux.
- Champ d'application des métriques
Configurez le champ d'application des métriques pour lister tous les projets qui stockent des données de métriques. Vos graphiques et règles d'alerte pourront ainsi afficher ou surveiller une vue agrégée de vos données de métriques.
Chaque projet Google Cloud contient un seul champ d'application des métriques, qui par défaut ne liste que le projet.
Nous vous recommandons de configurer l'étendue des métriques si l'une des conditions suivantes est remplie :
- Vous souhaitez représenter graphiquement des données stockées dans différents projets.
- Vous souhaitez qu'une règle d'alerte surveille les données stockées dans différents projets.
- Vous enregistrez les applications avec App Hub. Pour en savoir plus sur ce scénario, consultez Champs d'application des métriques pour les projets de gestion.
Pour en savoir plus, consultez Présentation des champs d'application des métriques.
- Champs d'application des traces
Configurez le champ d'application de trace par défaut pour lister tous les projets qui stockent des données de trace. Ainsi, lorsque vous ouvrirez la page Explorateur Trace, vous disposerez d'une vue agrégée de vos données de trace.
Vous pouvez créer plusieurs portées de trace. Lorsque vous utilisez la page Explorateur Trace, vous pouvez sélectionner un autre champ d'application de trace. La page recherche alors les projets listés dans le champ d'application sélectionné, puis actualise l'affichage.
Nous vous recommandons de configurer les champs d'application des traces lorsque vous souhaitez obtenir une vue unifiée des données de trace stockées dans différents projets.
Pour en savoir plus, consultez Créer et gérer des champs d'application de trace.
Avant de commencer
Pour obtenir les autorisations nécessaires pour créer et afficher des comptes, demandez à votre administrateur de vous accorder les rôles IAM suivants :
-
Pour créer et afficher des champs d'action de journaux, et pour obtenir le champ d'action des journaux par défaut :
Rédacteur de configuration des journaux (
roles/logging.configWriter
) sur votre projet -
Pour modifier un champ d'application de métriques :
Administrateur Monitoring (
roles/monitoring.admin
) sur votre projet et sur chaque projet que vous souhaitez ajouter au champ d'application des métriques -
Pour créer et afficher des champs d'application de trace, et pour obtenir le champ d'application de trace par défaut :
Utilisateur Cloud Trace (
roles/cloudtrace.user
) sur votre projet -
Pour obtenir et définir les champs d'application par défaut :
Éditeur d'observabilité (
roles/observability.editor
) sur votre projet
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Ces rôles prédéfinis contiennent les autorisations requises pour créer et afficher des comptes. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour créer et afficher des portées :
-
Pour configurer les niveaux de journaux :
logging.logScopes.{create, delete, get, list, update}
-
Pour configurer un champ d'application des métriques :
monitoring.metricsscopes.{link, get, list}
-
Pour configurer les portées de trace :
cloudtrace.traceScopes.{create, delete, get, list, update}
-
Pour obtenir et définir les champs d'application par défaut :
observability.scopes.{get, update}
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Configurer le champ d'application de l'observabilité
Cette section ne s'applique pas aux dossiers ni aux organisations.
Si vous ne configurez pas les composants du champ d'application de l'observabilité pour un projet, la page Explorateur de journaux affiche les données de journaux provenant du projet. Les pages Explorateur de métriques et Explorateur de traces ne peuvent afficher que les données stockées dans le projet. De plus, les règles d'alerte ne peuvent surveiller que les données stockées dans votre projet.
Pour les données de journaux et de trace, vos rôles IAM (Identity and Access Management) dans le projet que vous consultez, ainsi que dans les projets et les vues de journaux recherchés, déterminent les données affichées. Votre rôle IAM dans le projet que vous consultez détermine si vous pouvez afficher les données de métriques.
Console
Pour configurer le champ d'application de l'observabilité, vous devez configurer ses composants, à savoir le champ d'application des journaux par défaut, le champ d'application des métriques et le champ d'application des traces par défaut :
-
Enable the Observability API.
Avant d'activer l'API, assurez-vous d'avoir sélectionné le bon projet. Pour les configurations App Hub, sélectionnez le projet hôte App Hub ou le projet de gestion du dossier compatible avec les applications.
-
Dans la console Google Cloud , accédez à la page settings Paramètres :
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Monitoring.
Dans la barre d'outils de la console Google Cloud , sélectionnez votre projet Google Cloud . Pour les configurations App Hub, sélectionnez le projet hôte App Hub ou le projet de gestion du dossier compatible avec les applications.
Configurez le champ d'application des journaux par défaut :
Sélectionnez l'onglet Étendues du journal.
Les niveaux d'accès aux journaux existants sont listés. L'entrée comportant l'icône "Par défaut",
, est le champ d'application des journaux par défaut. Si vous souhaitez créer un champ d'application des journaux, cliquez sur Créer un champ d'application des journaux, puis remplissez la boîte de dialogue. Pour en savoir plus, consultez Créer et gérer des champs d'action de journaux.
Recherchez l'entrée que vous souhaitez définir par défaut, cliquez sur more_vert Plus, puis sélectionnez Définir par défaut.
Configurez le champ d'application des métriques :
- Sélectionnez l'onglet "Champ d'application des métriques".
- Dans le volet Projets Google Cloud, cliquez sur Ajouter des projets, puis renseignez la boîte de dialogue. Pour en savoir plus, consultez Configurer les champs d'application des métriques.
Configurez le champ d'application de trace par défaut :
Sélectionnez l'onglet Étendues de trace, puis procédez comme suit :
Les portées de trace existantes sont listées. L'entrée comportant l'icône "Par défaut",
, est le champ d'application de trace par défaut. Si vous souhaitez créer un champ d'application de trace, cliquez sur Créer un champ d'application de journal, puis remplissez la boîte de dialogue. Pour en savoir plus, consultez Créer et gérer des champs d'application de trace.
Recherchez l'entrée que vous souhaitez définir par défaut, cliquez sur more_vert Plus, puis sélectionnez Définir par défaut.
gcloud
Pour afficher et définir le champ d'application de l'observabilité par défaut, procédez comme suit :
Pour afficher les paramètres du champ d'application par défaut, exécutez la commande
gcloud observability scopes describe
.Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
- OBSERVABILITY_SCOPE_ID : nom d'un objet
Scope
. Cette valeur doit être définie sur_Default
. - LOCATION : le champ "Emplacement" doit être défini sur
global
. - PROJECT_ID : identifiant du projet.
Exécutez la commande
gcloud observability scopes describe
:Linux, macOS ou Cloud Shell
gcloud observability scopes describe OBSERVABILITY_SCOPE_ID \ --location=LOCATION\ --project=PROJECT_ID
Windows (PowerShell)
gcloud observability scopes describe OBSERVABILITY_SCOPE_ID ` --location=LOCATION` --project=PROJECT_ID
Windows (cmd.exe)
gcloud observability scopes describe OBSERVABILITY_SCOPE_ID ^ --location=LOCATION^ --project=PROJECT_ID
La réponse à la commande ressemble à ce qui suit :
logScope: logging.googleapis.com/projects/my-project/locations/global/logScopes/_Default name: projects/my-project/locations/global/scopes/_Default
- OBSERVABILITY_SCOPE_ID : nom d'un objet
Pour mettre à jour le champ d'application par défaut, exécutez la commande
gcloud observability scopes update
.Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
- OBSERVABILITY_SCOPE_ID : nom d'un objet
Scope
. Cette valeur doit être définie sur_Default
. - LOG_SCOPE_FQN_ID : ID complet du champ d'application du journal. Ce champ est au format suivant :
logging.googleapis.com/projects/PROJECT_ID/locations/LOCATION/logScopes/LOG_SCOPE_ID
Dans l'expression précédente, LOG_SCOPE_ID correspond à l'ID du champ d'application du journal. Exemple :
my-scope
. - LOCATION : le champ "Emplacement" doit être défini sur
global
. - PROJECT_ID : identifiant du projet.
Exécutez la commande
gcloud observability scopes update
:Linux, macOS ou Cloud Shell
gcloud observability scopes update OBSERVABILITY_SCOPE_ID \ --log-scope=LOG_SCOPE_FQN_ID\ --location=LOCATION\ --project=PROJECT_ID
Windows (PowerShell)
gcloud observability scopes update OBSERVABILITY_SCOPE_ID ` --log-scope=LOG_SCOPE_FQN_ID` --location=LOCATION` --project=PROJECT_ID
Windows (cmd.exe)
gcloud observability scopes update OBSERVABILITY_SCOPE_ID ^ --log-scope=LOG_SCOPE_FQN_ID^ --location=LOCATION^ --project=PROJECT_ID
Par exemple, si la valeur de LOG_SCOPE_ID est
my-scope
, la réponse ressemble à ce qui suit :Updated scope [_Default]. logScope: logging.googleapis.com/projects/my-project/locations/global/logScopes/my-scope name: projects/my-project/locations/global/scopes/_Default
- OBSERVABILITY_SCOPE_ID : nom d'un objet
REST
Non pris en charge pour définir le champ d'application de trace par défaut.
Pour utiliser l'API Observability afin d'obtenir ou de définir le champ d'application des journaux par défaut, procédez comme suit :
Assurez-vous que l'API Observability est activée :
-
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Définissez le projet par défaut pour Google Cloud CLI :
gcloud config set project PROJECT_ID
Avant d'exécuter la commande précédente, remplacez les éléments suivants :
- PROJECT_ID : identifiant du projet. Pour les configurations App Hub, sélectionnez le projet hôte App Hub ou le projet de gestion du dossier compatible avec les applications.
-
Enable the Observability API:
gcloud services enable observability.googleapis.com
-
Effectuez l'une des opérations suivantes :
Pour obtenir le champ d'application des journaux par défaut d'un projet, envoyez une requête au point de terminaison
projects.locations.scopes.get
. Vous devez spécifier un paramètre de chemin d'accès. La réponse est un objetScope
, qui liste le champ d'application des journaux par défaut.Pour mettre à jour le champ d'application des journaux par défaut d'un projet, envoyez une requête au point de terminaison
projects.locations.scopes.patch
. Vous devez spécifier un paramètre de chemin d'accès et des paramètres de requête, et fournir un objetScope
. Les paramètres de requête identifient les champs qui ont été modifiés. La réponse est un objetScope
.Le paramètre de chemin d'accès pour les deux points de terminaison se présente comme suit :
projects/PROJECT_ID/locations/LOCATION/scopes/OBSERVABILITY_SCOPE_ID
Les champs de l'expression précédente ont la signification suivante :
- PROJECT_ID : identifiant du projet. Pour les configurations App Hub, sélectionnez le projet hôte App Hub ou le projet de gestion du dossier compatible avec les applications.
- LOCATION : le champ "Emplacement" doit être défini sur
global
. - OBSERVABILITY_SCOPE_ID : nom d'un objet
Scope
. La valeur de ce champ doit être définie sur_Default
. L'objetScope
portant le nom_Default
stocke des informations sur le champ d'application du journal par défaut et est créé automatiquement.
Pour envoyer une commande à un point de terminaison d'API, vous pouvez utiliser APIs Explorer, qui vous permet d'envoyer une commande depuis une page de référence. Par exemple, pour obtenir le champ d'application par défaut actuel, vous pouvez procéder comme suit :
- Cliquez sur
projects.locations.scopes.get
. Dans le widget Try this method (Essayer cette méthode), saisissez ce qui suit dans le champ name (nom) :
projects/PROJECT_ID/locations/global/scopes/_Default
Avant de copier le champ précédent, remplacez PROJECT_ID par le nom de votre projet.
Sélectionnez Execute (Exécuter).
Dans la boîte de dialogue d'autorisation, effectuez les étapes requises.
La réponse est semblable à ce qui suit :
{ "name": "projects/my-project/locations/global/scopes/_Default", "logScope": "logging.googleapis.com/projects/my-project/locations/global/logScopes/_Default" }