Configurer les champs d'application de l'observabilité

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 :

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 :

  1. Enable the Observability API.

    Enable the 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.

  2. Dans la console Google Cloud , accédez à la page  Paramètres :

    Accéder aux paramètres

    Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Monitoring.

  3. 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.

  4. Configurez le champ d'application des journaux par défaut :

    1. 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.

    2. Recherchez l'entrée que vous souhaitez définir par défaut, cliquez sur  Plus, puis sélectionnez Définir par défaut.

  5. Configurez le champ d'application des métriques :

    1. Sélectionnez l'onglet "Champ d'application des métriques".
    2. 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.
  6. Configurez le champ d'application de trace par défaut :

    1. 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.

    2. Recherchez l'entrée que vous souhaitez définir par défaut, cliquez sur  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 :

  1. 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
    

  2. 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
    

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 :

  1. Assurez-vous que l'API Observability est activée :

    1. 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.

    2. 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.
    3. Enable the Observability API:

      gcloud services enable observability.googleapis.com
  2. 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 objet Scope, 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 objet Scope. Les paramètres de requête identifient les champs qui ont été modifiés. La réponse est un objet Scope.

      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'objet Scope 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 :

    1. Cliquez sur projects.locations.scopes.get.
    2. 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.

    3. Sélectionnez Execute (Exécuter).

    4. 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"
      }