修正資料落地和 CMEK 需求

您可以重新佈建觀測 bucket,以符合資料落地和加密法規要求。重新佈建後,_Trace bucket 的儲存位置和加密設定會與觀測能力 bucket 的預設設定相符。

如要重新佈建 bucket,請先調整預設設定,然後呼叫重新佈建方法。重新佈建作業可以執行下列任一操作:

  • 將 Cloud Key Management Service 金鑰追溯套用至觀測能力 bucket,而不變更其儲存位置。
  • 變更觀測能力 bucket 的儲存位置,並使用 Google 預設加密。
  • 變更觀測能力 bucket 的儲存位置,並使用 Cloud KMS 金鑰加密儲存的資料。

如要變更觀測能力 bucket 的顯示名稱、說明或 Cloud KMS 金鑰,請勿重新佈建 bucket,在這種情況下,請更新觀測能力 bucket。

重新佈建的運作方式

啟動重新佈建作業時,系統會執行下列步驟:

  1. 系統會判斷觀測能力值區是否符合重新佈建的資格。如果可觀測性值區通過下列所有檢查,即符合資格:

    • 觀測能力 bucket 名為 _Trace。
    • bucket 尚未重新佈建。
    • 找到觀測能力 bucket 的預設設定。
    • 如要與預設設定保持一致,請變更觀測能力 bucket 的位置,或將加密方式從 Google 預設加密機制變更為 CMEK。
  2. 系統會更新 bucket 設定。這項程序需要四到五小時。

限制

限制如下:

  • 系統允許每個觀測能力值區最多執行一次重新佈建作業。後續要求會失敗,並顯示 FAILED_PRECONDITION 錯誤。

  • 您只能重新佈建名為 _Trace 的 bucket。

  • 您無法存取在重新佈建前儲存的任何資料。這項資料已刪除,無法復原。

  • 如果 bucket 的位置變更,連結和連結的 BigQuery 資料集就會刪除。您必須重新建立所有連結。

  • 如果 bucket 的位置有所變更,您必須手動更新現有的分析檢視表。

  • 您無法取消或復原重新佈建作業。系統會忽略取消作業的嘗試。

  • 重新佈建作業期間的查詢行為未定義。

稽核

如要判斷觀測能力 bucket 的重新佈建記錄,可以使用稽核記錄。管理員活動記錄會記錄提出重新佈建要求的使用者、受影響的可觀測性 bucket,以及初始回應。

如要找出這些記錄,請在 Logs Explorer 中套用下列篩選器:

logName="projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity" AND
resource.type="audited_resource" AND
resource.labels.service="observability.googleapis.com" AND
resource.labels.method="google.cloud.observability.v1.Observability.ReprovisionBucket"

以下部分範例顯示管理員活動稽核記錄:

  {
    "logName": "projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity",
    "resource": {
      "type": "audited_resource",
      "labels": {
        "project_id": "PROJECT_ID",
        "service": "observability.googleapis.com",
        "method": "google.cloud.observability.v1.Observability.ReprovisionBucket"
      }
    },
    "protoPayload": {
      "@type": "type.googleapis.com/google.cloud.audit.AuditLog",
      "status": {
        "code": 0,
        "message": "OK"
      },
      ...
      "serviceName": "observability.googleapis.com",
      "methodName": "google.cloud.observability.v1.Observability.ReprovisionBucket",
      "authorizationInfo": [...]
      "resourceName": "projects/PROJECT_ID/locations/us/buckets/_Trace",
      "request": {
        "@type": "type.googleapis.com/google.cloud.observability.v1.ReprovisionBucketRequest",
        "name": "projects/PROJECT_ID/locations/us/buckets/_Trace"
      },
      "response": {
        "@type": "type.googleapis.com/google.longrunning.Operation",
        "name": "projects/PROJECT_ID/locations/us/operations/reprovision-123456789-0",
        "done": false,
        "metadata": {
          "@type": "type.googleapis.com/google.cloud.observability.v1.OperationMetadata",
          "target": "projects/PROJECT_ID/locations/us/buckets/_Trace",
          "verb": "reprovision",
          "apiVersion": "v1"
        }
      }
    },
    "severity": "NOTICE",
    "timestamp": "2026-06-30T16:54:02.123456Z"
  }

事前準備

  1. 查看限制。
  2. 如要取得重新佈建觀測能力 bucket 所需的權限,請要求管理員在託管觀測能力 bucket 的專案中,授予您觀測能力編輯者 (roles/observability.editor) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。

    可觀測性編輯者角色具備建立及刪除可觀測性 bucket、可觀測性資料集和資料集連結的權限。您需要這些權限,因為重新佈建作業會同時發出建立和刪除指令。

    您或許還可透過自訂角色或其他預先定義的角色取得這些權限。

重新佈建觀測能力 bucket

如要重新佈建觀測能力值區,請按照下列步驟操作:

  1. 設定觀測能力 bucket 的預設設定
  2. 重新佈建 bucket
  3. 監控進度
  4. 手動建立連結及更新數據分析檢視表

設定觀測能力 bucket 的預設設定

設定預設儲存位置,並視需要設定預設 Cloud KMS 金鑰。您可以在專案、資料夾或組織層級設定這些政策。舉例來說,如果您為資料夾設定預設設定,則該資料夾的子系會使用這些設定,除非子系也設定了預設設定。

如要進一步瞭解如何查看及調整預設設定,請參閱「設定觀測能力 bucket 的預設值」。

重新佈建 bucket

使用指令碼以非同步方式發出重新佈建要求,並輪詢以判斷重新佈建作業何時完成。如要重新佈建觀測能力 bucket,請使用 projects.locations.buckets.reprovision 方法。

您必須指定觀測能力 bucket 的名稱,格式如下:

projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID

上述運算式中的欄位具有下列意義:

回應為 Operation 物件。Operation.done 欄位會提供進度資訊:

  • done 為 false:作業正在進行中。如要瞭解如何輪詢作業,請參閱「監控進度」。

  • done 為 true:作業已完成,且已設定 error 或 response 欄位:

    • response 已設定:表示非同步作業已成功完成。這個值反映了觀測能力 bucket 的最新狀態,該 bucket 是重新佈建的目標。

    • error 已設定:表示非同步作業失敗。這個欄位的值是 Status 物件,其中包含 gRPC 錯誤代碼和錯誤訊息。如要瞭解常見的錯誤訊息,請參閱「錯誤訊息」一文。

重新佈建通常需要四到五小時才能完成。

監控進度

Operation 物件包含進度資訊。輪詢作業,直到 Operation.done 欄位的值為 true。接著,您可以使用 Operation.response 和 Operation.error 欄位,判斷重新佈建是否成功。

如要輪詢 Operation,請使用 folders.locations.operations.get 方法。

將路徑參數設為作業名稱:

operations/UNIQUE_ID

UNIQUE_ID 欄位是作業的專屬 ID。

回應是更新後的 Operation 物件。

如果應用程式在輪詢時收到 HTTP 503 / UNAVAILABLE 回應,請實作指數輪詢並重試要求。這項錯誤表示要求在傳輸或網路層失敗。

手動建立連結及更新 Analytics 分析檢視表

重新佈建作業完成後,請重新建立所有連結並更新分析檢視表。

例如,您可以執行下列操作:

  1. 列出觀測能力資料集的連結。在某些情況下,重新佈建作業會保留連結。如要瞭解這個步驟,請參閱「列出資料集的連結」。

  2. 重新建立連結的 BigQuery 資料集。如要瞭解這個步驟,請參閱「建立資料集連結」。

  3. 查看分析檢視表,並視需要更新可觀測性 bucket 的路徑。

錯誤訊息

本節列出常見的錯誤代碼,以及適用的復原動作。

FAILED_PRECONDITION

FAILED_PRECONDITION 錯誤訊息表示觀測能力 bucket 不符合重新佈建的資格。

錯誤訊息範例:

{
    "error":{
        "code": 400,
        "message": "Only _Trace buckets can be reprovisioned.",
        "status": "FAILED_PRECONDITION",
        "details": [ ... ]
    }
}

您無法採取任何行動,讓觀測能力 bucket 符合重新佈建的資格。

INVALID_ARGUMENT

INVALID_ARGUMENT 錯誤訊息表示觀測能力 bucket 的位置和 CMEK 設定與觀測能力 bucket 的預設設定一致。

如要解決這項失敗問題,請更新專案、資料夾或組織的可觀測性 bucket 預設設定,然後重新佈建可觀測性 bucket。

PERMISSION_DENIED

PERMISSION_DENIED 錯誤訊息表示您不具備重新佈建觀測能力 bucket 所需的 IAM 角色。

如要解決這項問題,請要求管理員授予本文件「事前準備」一節列出的 IAM 角色。

疑難排解

本節說明如何解決常見問題,並回答重新佈建觀測能力 bucket 後可能出現的問題。

如何得知 bucket 是否已重新佈建?

查詢稽核記錄,並依記錄名稱、服務和方法篩選記錄項目。詳情請參閱本文的「稽核」一節。

為什麼我的專案列出兩個追蹤記錄資料 bucket?

重新佈建 _Trace 觀測能力 bucket 時,系統可能需要建立新的 bucket。如果設為 true,在重新佈建作業期間,專案會包含兩個名為 _Trace 的觀測能力 bucket。

  • 如果您列出專案中的觀測能力 bucket,結果會顯示這兩個 bucket。

  • 如果您使用 Observability Analytics 查詢追蹤記錄資料,則兩個 bucket 都有 _AllSpans 檢視表。

您不需要採取任何行動。

如果系統在重新佈建作業中建立了觀測能力 bucket,則在該作業成功完成後,系統會刪除該作業指定的 bucket。如果重新佈建作業失敗,系統會刪除新的 bucket。

為什麼重新佈建後,查詢的資料會不同?

重新佈建作業會刪除作業啟動前儲存的所有資料。這類資料無法復原。

為什麼重新佈建後,Trace Explorer 沒有顯示任何資料?

Trace Explorer 會使用快取來提升效能。快取會與查詢的可觀測性 bucket 連結,重要的是,如果查詢時該 bucket 無法使用,查詢就會失敗。

在重新佈建作業期間, Google Cloud 專案可能會包含兩個名為 _Trace 的觀測能力 bucket。此外,當該作業完成時,其中一個 bucket 會遭到刪除。在這種情況下,Trace Explorer 使用的快取可能會繫結至已不存在的 bucket。

快取逾時後,這項失敗會自行更正,這需要約 10 分鐘。

為什麼無法重新佈建觀測能力 bucket?

如果重新佈建作業失敗,並顯示 FAILED_PRECONDITION 狀態,表示目標觀測能力 bucket 不符合重新佈建資格。以下列出 bucket 不符合重新佈建資格的部分原因:

  • 觀測能力 bucket 的名稱不是 _Trace。
  • 觀測能力 bucket 的重新佈建次數超過一次。您可以查詢稽核記錄,判斷 bucket 是否已重新佈建。
  • 找不到觀測能力 bucket 的預設設定。如要解決這項錯誤,請設定觀測能力 bucket 的預設設定,然後重試指令。
  • 觀測能力 bucket 的設定與預設設定一致。也就是說,重新佈建作業不會變更觀測能力 bucket 的設定。
  • 為符合預設設定,系統必須將 CMEK 替換為 Google 代管的加密金鑰。不支援這項操作。