Observability-Buckets aktualisieren

Sie können den Anzeigenamen, die Beschreibung oder den Cloud Key Management Service-Schlüssel eines Observability-Buckets aktualisieren, um Änderungen in der Organisation widerzuspiegeln oder Verschlüsselungsschlüssel zu rotieren.

Mit diesen Aktualisierungsvorgängen können Sie keine Compliance-Probleme beheben. Sie können diese Vorgänge beispielsweise nicht verwenden, um den Speicherort eines Observability-Buckets zu ändern oder einen Cloud KMS-Schlüssel auf einen Bucket anzuwenden, der die standardmäßige Google-Verschlüsselung verwendet.

Auswirkungen der Aktualisierung eines Cloud KMS-Schlüssels

Die Aktualisierung des Cloud KMS-Schlüssels für einen Observability-Bucket hat keine Auswirkungen auf gespeicherte Daten. Das heißt, vor Abschluss der Aktualisierung werden neue Daten mit dem ursprünglichen Schlüssel verschlüsselt. Nach Abschluss der Aktualisierung werden neue Daten mit dem aktualisierten Schlüssel verschlüsselt.

Sie können weiterhin auf die gespeicherten Daten zugreifen und sie ansehen, sofern der ursprüngliche Cloud KMS-Schlüssel aktiviert bleibt und das Google Cloud Observability-Dienstkonto die Berechtigungen zum Verschlüsseln und Entschlüsseln behält.

Wenn Sie den ursprünglichen Cloud KMS-Schlüssel deaktivieren oder löschen, sind alle Daten, die geschrieben wurden, als dieser Schlüssel aktiv war, sofort dauerhaft unzugänglich und nicht lesbar.

Beschränkungen

Folgende Einschränkungen gelten:

  • Sie können den Speicherort nicht ändern.
  • Sie können keinen Cloud KMS-Schlüssel auf einen Observability-Bucket anwenden, der die standardmäßige Google-Verschlüsselung verwendet.
  • Der Anzeigename darf nicht länger als 100 codierte Byte sein.
  • Die Beschreibung darf nicht länger als 1.000 codierte Byte sein.
  • Daten werden 30 Tage lang gespeichert. Sie können den Aufbewahrungszeitraum weglassen oder auf 30 festlegen.
  • Wenn Sie den Cloud KMS-Schlüssel aktualisieren, muss der Speicherort des Schlüssels genau mit dem übergeordneten Speicherort des Observability-Buckets übereinstimmen.

Hinweis

Konfigurieren Sie Ihr Projekt und Ihre IAM-Rollen und wählen Sie die Schnittstelle aus, die Sie verwenden möchten.

Projekt und Rollen konfigurieren

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

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

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

  4. Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Observability-Bearbeiter (roles/observability.editor) für Ihr Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen von Observability-Buckets benötigen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

    Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

Schnittstellen konfigurieren

gcloud

Installieren Sie die Google Cloud CLI und melden Sie sich dann mit Ihrer föderierten Identität in der gcloud CLI an. Initialisieren Sie die Google Cloud CLI nach der Anmeldung mit dem folgenden Befehl: initialize

gcloud init

REST

Wenn Sie die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung verwenden möchten, verwenden Sie die Anmeldedaten, die Sie der gcloud CLI bereitstellen.

    Installieren Sie die Google Cloud CLI und melden Sie sich dann mit Ihrer föderierten Identität in der gcloud CLI an.

Weitere Informationen finden Sie in der Google Cloud Authentifizierungsdokumentation unter Für die Verwendung von REST authentifizieren.

Cloud KMS-Schlüssel konfigurieren

Optional. Wenn Sie den Cloud KMS-Schlüssel aktualisieren möchten, der vom Observability-Bucket verwendet wird, gehen Sie so vor:

  1. Aktivieren Sie die Cloud Key Management Service API.

    Rollen, die zum Aktivieren von APIs erforderlich sind

    Zum Aktivieren von APIs benötigen Sie die Berechtigung serviceusage.services.enable. Wenn Sie das Projekt erstellt haben, haben Sie diese Berechtigung wahrscheinlich bereits über die Rolle „Inhaber“ (roles/owner). Andernfalls können Sie diese Berechtigung über die Rolle „Service Usage-Administrator“ (roles/serviceusage.serviceUsageAdmin) erhalten. Informationen zum Zuweisen von Rollen.

    API aktivieren

  2. Schlüsselbund und Schlüssel erstellen.

    Der Speicherort des Observability-Buckets muss mit dem Speicherort des Schlüssels übereinstimmen.

  3. Ersetzen Sie PROJECT_ID durch die ID Ihres Projekts und führen Sie dann den folgenden Befehl aus:

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

    Die Antwort auf den vorherigen Befehl enthält die ID des Google Cloud Observability-Dienstkontos.

  4. Weisen Sie dem Google Cloud Observability-Dienstkonto die Rolle „ Cloud KMS CryptoKey-Verschlüsseler/Entschlüsseler “ zu.

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

    Ersetzen Sie vor dem Ausführen des vorherigen Befehls die folgenden Werte:

    • KMS_PROJECT_ID: Die eindeutige alphanumerische Kennung aus dem Google Cloud Projektnamen und einer zufällig zugewiesenen Nummer des Google Cloud Projekts, in dem Cloud KMS ausgeführt wird. Informationen zum Abrufen dieser Kennung finden Sie unter Projekte identifizieren.
    • service-PROJECT_NUMBER: Der Name des Google Cloud Observability-Dienst kontos, das im vorherigen Schritt aufgeführt wurde.
    • KMS_KEY_LOCATION: Die Region des Cloud KMS-Schlüssels.
    • KMS_KEY_RING: Der Name des Cloud KMS-Schlüsselbunds.
    • KMS_KEY_NAME: Der Name des Cloud KMS-Schlüssels. Er ist so formatiert: projects/KMS_PROJECT_ID/locations/LOCATION/keyRings/KMS_KEY_RING/cryptoKeys/KEY.

Observability-Bucket aktualisieren

REST

Wenn Sie einen Observability-Bucket aktualisieren möchten, senden Sie eine Anfrage an projects.locations.buckets.patch.

Sie müssen den Parameter „parent“ angeben, der den zu aktualisierenden Bucket identifiziert. Dieser Parameter hat folgendes Format:

projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID

Die Felder im vorherigen Ausdruck haben folgende Bedeutung:

Der Abfrageparameter muss ein Feld updateMask enthalten, das angibt, welche Felder geändert werden sollen. Beispiel:

  • Verwenden Sie updateMask=description, um die Beschreibung zu aktualisieren.
  • Verwenden Sie updateMask=description,cmekSettings.kmsKey, um den Cloud KMS-Schlüssel und die Beschreibung zu aktualisieren.

Der Anfragetext ist ein Bucket-Objekt. Sie müssen alle Felder ausfüllen, die in der Aktualisierungsmaske angegeben sind. Füllen Sie keine Felder aus, die Sie nicht aktualisieren.

Wenn Sie beispielsweise nur das Feld description aktualisieren möchten, können Sie das folgende Bucket-Objekt verwenden:

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

Die Antwort ist ein Operation Objekt. Normalerweise dauert es weniger als eine Minute, bis diese Methode abgeschlossen ist.

Normalerweise prüfen Sie, ob eine Methode, die ein Operation Objekt zurückgibt, abgeschlossen ist, indem Sie das Objekt abfragen. Rufen Sie dazu projects.locations.operations.get auf, bis das Operation.done Feld auf true gesetzt ist. Anschließend können Sie anhand anderer Felder in der Operation-Struktur feststellen, ob die Methode erfolgreich war oder fehlgeschlagen ist.

Die Methode patch wird jedoch schnell abgeschlossen. Alternativ können Sie eine Minute warten und dann die Aktualisierung überprüfen, indem Sie Ihre Observability-Buckets auflisten.

gcloud

Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

  • LOCATION: Der Speicherort der Observability-Buckets. Wenn Sie alle Observability-Buckets auflisten möchten, unabhängig vom Speicherort, setzen Sie den Speicherort auf einen Bindestrich (-).
  • PROJECT_ID: Die Kennung des Projekts.

Führen Sie den gcloud beta observability buckets list Befehl aus:

Linux, macOS oder 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

Die Antwort enthält den Namen, die Beschreibung und die Erstellungszeit der einzelnen Observability-Buckets. Das folgende Beispiel zeigt eine Antwort, wenn der Befehl erfolgreich war:

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

REST

Wenn Sie die Observability-Buckets auflisten möchten, die sich in Ihrem Projekt und an einem bestimmten Speicherort befinden, senden Sie eine Anfrage an den projects.locations.buckets.list Endpunkt.

Sie müssen den Parameter „parent“ angeben, der folgendes Format hat:

projects/PROJECT_ID/locations/LOCATION

Die Felder im vorherigen Ausdruck haben folgende Bedeutung:

  • PROJECT_ID: Die Kennung des Projekts.
  • LOCATION: Der Speicherort des Observability-Buckets. Wenn Sie LOCATION auf einen Bindestrich (-) setzen, werden alle Observability-Buckets in Ihrem Projekt aufgelistet.

Die Antwort ist ein Array von Bucket-Objekten. Für jedes Objekt hat der Wert des Felds name das folgende Format:

projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID

Wenn beispielsweise ein Befehl an den Endpunkt buckets.list gesendet wurde und der Parameter „parent“ auf projects/my-project/locations/us gesetzt war, lautete die Antwort:

{
  "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
    }
  ]
}

Sie können Befehle an andere Observability API-Endpunkte senden, um weitere Informationen zum Bucket mit der ID BUCKET_ID zu erhalten. Sie können beispielsweise die Datasets in diesem Bucket sowie die Ansichten und Links in jedem Dataset auflisten. Eine vollständige Liste der Observability API-Endpunkte finden Sie in der Referenzdokumentation zur Observability API.

Nächste Schritte