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.

Le reste de cette section décrit les différents niveaux que vous pouvez afficher et configurer.

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 .

Vous n'avez pas besoin de configurer les composants du champ d'application de l'observabilité pour un projet. Si vous vous fiez aux valeurs par défaut du système, les événements suivants se produisent :

  • La page Explorateur de journaux affiche les données de journaux provenant du projet.
  • Les pages Explorateur de métriques et Explorateur de traces affichent les données de métriques et de traces stockées dans le projet.
  • Les règles d'alerte surveillent les données de métriques 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.

Configurer le champ d'application de l'observabilité

Cette section ne s'applique pas aux dossiers ni aux organisations.

Pour les données de journaux et de traces, vos rôles Identity and Access Management (IAM) dans le projet que vous consultez, ainsi que dans les projets et les vues de journaux recherchés, affectent les données renvoyées par la requête. Si vous exécutez une requête pour afficher des données de journaux auxquelles vous n'êtes pas autorisé à accéder, la requête ne renvoie aucune donnée de journal.

Pour les données de métriques, lorsqu'un champ d'application de métriques est configuré pour un projet, ce projet obtient un accès en lecture aux données de métriques stockées par les projets listés dans son champ d'application de métriques. Lorsqu'un utilisateur se voit attribuer un rôle Identity and Access Management qui lui permet d'afficher les données de métriques dans un projet, il peut consulter les données de métriques disponibles pour le projet.

Avant de commencer

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

  3. Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

    REST

    Pour utiliser les exemples d'API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à gcloud CLI.

      Installez Google Cloud CLI. Après l'installation, initialisez Google Cloud CLI en exécutant la commande suivante :

      gcloud init

      Si vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.

    Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Google Cloud .

    Afficher et définir le champ d'application par défaut

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

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

    4. 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.
    5. 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 est semblable à 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

    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 :

    • 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"
      }