Mettre à jour les buckets d'observabilité

Vous pouvez modifier le nom à afficher, la description ou la clé Cloud Key Management Service d'un bucket d'observabilité pour refléter les changements organisationnels ou alterner les clés de chiffrement.

Vous ne pouvez pas utiliser ces opérations de mise à jour pour résoudre les problèmes de conformité. Par exemple, vous ne pouvez pas utiliser ces opérations pour modifier l'emplacement d'un bucket d'observabilité ni appliquer une clé Cloud KMS à un bucket qui utilise le chiffrement par défaut de Google.

Effets de la mise à jour d'une clé Cloud KMS

La mise à jour de la clé Cloud KMS d'un bucket d'observabilité n'affecte pas les données stockées. Autrement dit, avant la fin de la mise à jour, la clé d'origine chiffre les nouvelles données. Une fois la mise à jour terminée, la clé mise à jour chiffre les nouvelles données.

Vous pouvez continuer à accéder aux données stockées et à les consulter à condition que la clé Cloud KMS d'origine reste activée et que le compte de service Google Cloud Observability conserve les autorisations de chiffreur/déchiffreur.

Si vous désactivez ou détruisez la clé Cloud KMS d'origine, toutes les données écrites lorsque cette clé était active deviennent immédiatement définitivement inaccessibles et illisibles.

Limites

Les restrictions suivantes s'appliquent :

  • Vous ne pouvez pas modifier l'emplacement.
  • Vous ne pouvez pas appliquer de clé Cloud KMS à un bucket d'observabilité qui utilise le chiffrement par défaut de Google.
  • Le nom à afficher ne doit pas dépasser 100 octets encodés.
  • La description ne doit pas dépasser 1 000 octets encodés.
  • Les données sont stockées pendant 30 jours. Vous pouvez omettre la période de conservation ou la définir sur 30.
  • Si vous mettez à jour la clé Cloud KMS, l'emplacement de la clé doit correspondre exactement à l'emplacement parent du bucket d'observabilité.

Avant de commencer

Configurez votre projet et vos rôles IAM, puis sélectionnez l'interface que vous prévoyez d'utiliser.

Configurer votre projet et vos rôles

  1. Connectez-vous à votre compte Google Cloud . Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits sans frais pour exécuter, tester et déployer des charges de travail.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Observability API.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Observability API.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

  8. Pour obtenir les autorisations nécessaires pour mettre à jour les buckets d'observabilité, demandez à votre administrateur de vous accorder le rôle IAM Éditeur 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.

    Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.

Configurer des interfaces

gcloud

Dans la console Google Cloud , activez Cloud Shell.

Activer Cloud Shell

En bas de la console Google Cloud , une session Cloud Shell démarre et affiche une invite de ligne de commande. Cloud Shell est un environnement shell dans lequel Google Cloud CLI est déjà installé, et dans lequel des valeurs sont déjà définies pour votre projet actuel. L'initialisation de la session peut prendre quelques secondes.

Terraform

Pour utiliser les exemples Terraform de cette page dans un environnement de développement local, installez et initialisez la gcloud CLI, puis configurez les Identifiants par défaut de l'application avec vos identifiants utilisateur.

  1. Installez la Google Cloud CLI.

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

  3. Si vous utilisez un shell local, créez des identifiants d'authentification locaux pour votre compte utilisateur :

    gcloud auth application-default login

    Vous n'avez pas besoin de le faire si vous utilisez Cloud Shell.

    Si une erreur d'authentification est renvoyée et que vous utilisez un fournisseur d'identité (IdP) externe, vérifiez que vous vous êtes connecté à la gcloud CLI avec votre identité fédérée.

Pour en savoir plus, consultez Configurer les ADC pour un environnement de développement local dans la documentation sur l'authentification Google Cloud .

REST

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

    Installez la Google Cloud CLI.

    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 .

Configurer la clé Cloud KMS

Facultatif. Si vous prévoyez de mettre à jour la clé Cloud KMS utilisée par le bucket d'observabilité, procédez comme suit :

  1. Activez l'API Cloud Key Management Service.

    Rôles requis pour activer les API

    Pour activer les API, vous devez disposer de l'autorisation serviceusage.services.enable. Si vous avez créé le projet, vous disposez probablement déjà de cette autorisation grâce au rôle Propriétaire (roles/owner). Sinon, vous pouvez obtenir cette autorisation grâce au rôle Administrateur Service Usage (roles/serviceusage.serviceUsageAdmin). Découvrez comment attribuer des rôles.

    Activer l'API

  2. Créez un trousseau de clés et une clé.

    L'emplacement du bucket d'observabilité doit correspondre à celui de la clé.

  3. Remplacez PROJECT_ID par l'ID de votre projet, puis exécutez la commande suivante :

    gcloud beta observability settings describe \
    --location=global --project=PROJECT_ID
    

    La réponse à la commande précédente liste l'ID du compte de service Google Cloud Observability.

  4. Accordez le rôle Chiffreur/Déchiffreur de CryptoKey Cloud KMS au compte de service Google Cloud Observability.

    gcloud kms keys add-iam-policy-binding \
    --project=KMS_PROJECT_ID \
    --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-observability.iam.gserviceaccount.com \
    --role=roles/cloudkms.cryptoKeyEncrypterDecrypter \
    --location=KMS_KEY_LOCATION \
    --keyring=KMS_KEY_RING \
    KMS_KEY_NAME
    

    Avant d'exécuter la commande précédente, effectuez les remplacements suivants :

    • KMS_PROJECT_ID : identifiant alphanumérique unique du projet Google Cloud exécutant Cloud KMS. Il est composé du nom de votre projet Google Cloud et d'un numéro attribué de manière aléatoire. Pour savoir comment obtenir cet identifiant, consultez Identifier des projets.
    • service-PROJECT_NUMBER : nom du compte de service Google Cloud Observability listé à l'étape précédente.
    • KMS_KEY_LOCATION : région de la clé Cloud KMS.
    • KMS_KEY_RING : nom du trousseau de clés Cloud KMS.
    • KMS_KEY_NAME : nom de la clé Cloud KMS. Son format est le suivant : projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KMS_KEY_RING/cryptoKeys/KEY.

Mettre à jour un bucket d'observabilité

gcloud

Non compatible

Terraform

Pour modifier le nom à afficher, la description ou la clé CMEK, utilisez la ressource Terraform google_observability_bucket et définissez les champs suivants :

  • project : ID de votre projet.
  • location : emplacement du bucket d'observabilité. Pour plus d'informations, consultez Emplacements.
  • bucket_id : ID du bucket d'observabilité. La valeur de ce champ doit être définie sur _Trace.

Vous ne pouvez modifier que la description, le nom à afficher et le CMEK. Pour en savoir plus, consultez la documentation de la ressource.

REST

Pour mettre à jour un bucket d'observabilité, envoyez une requête à projects.locations.buckets.patch.

Vous devez spécifier le paramètre parent, qui identifie le bucket à mettre à jour. Ce paramètre se présente sous la forme suivante :

projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID

Les champs de l'expression précédente ont les significations suivantes :

Le paramètre de requête doit spécifier un champ updateMask, qui identifie les champs à modifier. Exemple :

  • Pour mettre à jour la description, utilisez updateMask=description.
  • Pour mettre à jour la clé Cloud KMS et la description, utilisez updateMask=description,cmekSettings.kmsKey.

Le corps de la requête est un objet Bucket. Vous devez renseigner tous les champs spécifiés par le masque de mise à jour. Ne renseignez pas les champs que vous ne mettez pas à jour.

Par exemple, pour mettre à jour uniquement le champ description, vous pouvez utiliser l'objet Bucket suivant :

{
    "description": "Updated description for my observability bucket."
}

La réponse est un objet Operation. Cette méthode prend généralement moins d'une minute.

En règle générale, pour déterminer si une méthode qui renvoie un objet Operation est terminée, vous interrogez l'objet en appelant projects.locations.operations.get jusqu'à ce que le champ Operation.done soit défini sur true. Vous pouvez ensuite utiliser d'autres champs de la structure Operation pour déterminer si la méthode a réussi ou échoué.

Cependant, la méthode patch se termine rapidement. Par conséquent, une autre solution consiste à patienter une minute, puis à vérifier la mise à jour en listant vos buckets d'observabilité.

Cette section explique comment lister vos buckets d'observabilité. Un bucket d'observabilité est l'entité de gestion des ensembles de données, qui stockent les données.

gcloud

Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :

  • LOCATION : emplacement des buckets d'observabilité. Pour lister tous les buckets d'observabilité, quel que soit leur emplacement, définissez l'emplacement sur un tiret (-).
  • PROJECT_ID : identifiant du projet.

Exécutez la commande gcloud beta observability buckets list  :

Linux, macOS ou Cloud Shell

gcloud beta observability buckets list \
 --location=LOCATION --project=PROJECT_ID

Windows (PowerShell)

gcloud beta observability buckets list `
 --location=LOCATION --project=PROJECT_ID

Windows (cmd.exe)

gcloud beta observability buckets list ^
 --location=LOCATION --project=PROJECT_ID

La réponse liste le nom, la description et la date de création de chaque bucket d'observabilité. Voici un exemple de réponse lorsque la commande est exécutée avec succès :

---
createTime: '2026-01-21T21:39:22.381083860Z'
description: Bucket for storing spans from Cloud Trace.
name: projects/my-project/locations/us/buckets/_Trace

Terraform

Vous ne pouvez pas utiliser Terraform pour lister les buckets d'observabilité.

REST

Pour répertorier les buckets d'observabilité qui se trouvent dans votre projet et dans un emplacement spécifique, utilisez la méthode projects.locations.buckets.list.

Vous devez spécifier le paramètre parent, qui se présente comme suit :

projects/PROJECT_ID/locations/LOCATION

Les champs de l'expression précédente ont les significations suivantes :

  • PROJECT_ID : identifiant du projet.
  • LOCATION : emplacement du bucket d'observabilité. Si vous définissez LOCATION sur un tiret (-), tous les buckets d'observabilité de votre projet sont listés.

La réponse est un tableau d'objets Bucket. Pour chaque objet, la valeur du champ name est au format suivant :

projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID

Voici un exemple de réponse :

{
  "buckets": [
    {
      "name": "projects/my-project/locations/us/buckets/_Trace",
      "description": "Trace Bucket",
      "createTime": "2025-01-01T15:42:30.988919645Z",
      "updateTime": "2025-02-04T15:42:30.988919645Z",
      "retentionDays": 30
    }
  ]
}

Vous pouvez utiliser l'API Observability pour obtenir plus d'informations sur le bucket dont l'ID est BUCKET_ID. Par exemple, vous pouvez lister les ensembles de données du bucket, ainsi que les vues et les liens de chaque ensemble de données. Pour en savoir plus, consultez la documentation de référence de l'API Observability.

Étapes suivantes