設定記錄檔 bucket

本文說明如何使用 Trusted Cloud 控制台、Google Cloud CLILogging API 建立及管理 Cloud Logging 值區。此外,本文也提供在Trusted Cloud 專案層級建立及管理記錄值區的操作說明。您無法在資料夾或機構層級建立記錄檔值區,但 Cloud Logging 會自動在資料夾和機構層級為您建立 _Default_Required 記錄檔值區。

如需值區的概念總覽,請參閱「轉送和儲存空間總覽:記錄值區」。

本文不會說明如何建立使用客戶自行管理的加密金鑰 (CMEK) 的記錄 bucket。如要瞭解這個主題,請參閱「設定記錄檔儲存空間的 CMEK」。

事前準備

如要開始使用 bucket,請按照下列步驟操作:

建立值區

每個Trusted Cloud 專案最多可建立 100 個 buckets。

如要為 Trusted Cloud 專案建立使用者定義的記錄檔 bucket,請按照下列步驟操作:

Trusted Cloud 控制台

如要在 Trusted Cloud 專案中建立記錄檔 bucket,請按照下列步驟操作:

  1. 在 Trusted Cloud 控制台中,前往「Logs Storage」(記錄檔儲存空間) 頁面:

    前往「Logs Storage」(記錄檔儲存空間)

    如果您是使用搜尋列尋找這個頁面,請選取子標題為「Logging」的結果

  2. 按一下「建立記錄檔值區」

  3. 輸入 bucket 的「名稱」和「說明」

  4. 選用:如要選取記錄的儲存區域,請按一下「選取記錄 bucket 區域」選單,然後選取區域。如果您未選取地區,系統會使用 global 地區,也就是說,記錄可以實際儲存在任何支援的地區。

  5. 點選「建立值區」

    完成這些步驟可能需要一些時間。

gcloud

如要建立記錄儲存空間,請執行 gcloud logging buckets create 指令:

gcloud logging buckets create BUCKET_ID --location=LOCATION

舉例來說,如果您想在 global 地區使用 BUCKET_ID my-bucket 建立值區,指令會如下所示:

gcloud logging buckets create my-bucket --location global --description "My first bucket"

REST

如要建立 bucket,請使用 projects.locations.buckets.create 方法。如下準備方法的引數:

  1. parent 參數設為要在其中建立 Bucket 的資源: projects/PROJECT_ID/locations/LOCATION

    變數 LOCATION 是指您要儲存記錄的區域

    舉例來說,如果您想在 global 地區為專案 my-project 建立值區,parent 參數會如下所示:projects/my-project/locations/global

  2. 設定 bucketId 參數,例如 my-bucket

  3. 呼叫同步方法 projects.locations.buckets.create 來建立 bucket。

建立 bucket 後,請建立接收器,將記錄檔項目傳送至 bucket,並設定記錄檔檢視區塊,控管哪些使用者可以存取新 bucket 中的記錄檔,以及他們可以存取哪些記錄檔。

管理值區

本節說明如何使用 Google Cloud CLI 或 Trusted Cloud 控制台管理記錄儲存區。

更新 bucket

如要更新 bucket 的屬性 (例如說明),請按照下列步驟操作:

Trusted Cloud 控制台

如要更新 bucket 的屬性,請按照下列步驟操作:

  1. 在 Trusted Cloud 控制台中,前往「Logs Storage」(記錄檔儲存空間) 頁面:

    前往「Logs Storage」(記錄檔儲存空間)

    如果您是使用搜尋列尋找這個頁面,請選取子標題為「Logging」的結果

  2. 找到要更新的 bucket,然後按一下「更多」圖示

  3. 選取「編輯 bucket」

  4. 視需要編輯儲存空間。

  5. 按一下「Update bucket」(更新 bucket)

gcloud

如要更新 bucket 的屬性,請執行 gcloud logging buckets update 指令:

gcloud logging buckets update BUCKET_ID --location=LOCATION UPDATED_ATTRIBUTES

例如:

gcloud logging buckets update my-bucket --location=global --description "Updated description"

REST

如要更新 bucket 的屬性,請使用 Logging API 中的 projects.locations.buckets.patch

鎖定 bucket

鎖定值區以防更新時,系統也會鎖定值區的保留政策。鎖定保留政策後,必須等待 bucket 中的所有記錄檔項目達到 bucket 的保留期限,才能刪除 bucket。如要避免意外刪除含有已鎖定記錄值區的專案,請為該專案新增防刪除鎖定。詳情請參閱「透過防刪除鎖定保護專案」。

如要防止任何人更新或刪除記錄值區,請鎖定該值區。如要鎖定值區,請執行下列步驟:

Trusted Cloud 控制台

Trusted Cloud 控制台不支援鎖定記錄檔儲存空間。

gcloud

如要鎖定 bucket,請執行 gcloud logging buckets update 指令並加上 --locked 旗標:

gcloud logging buckets update BUCKET_ID --location=LOCATION --locked

例如:

gcloud logging buckets update my-bucket --location=global --locked

REST

如要鎖定 bucket 的屬性,請在 Logging API 中使用 projects.locations.buckets.patch。將 locked 參數設為 true

列出值區

如要列出與 Trusted Cloud 專案相關聯的記錄檔儲存空間,並查看保留設定等詳細資料,請按照下列步驟操作:

Trusted Cloud 控制台

在 Trusted Cloud 控制台中,前往「Logs Storage」(記錄檔儲存空間) 頁面:

前往「Logs Storage」(記錄檔儲存空間)

如果您是使用搜尋列尋找這個頁面,請選取子標題為「Logging」的結果

名為「記錄檔值區」的表格會列出與目前專案相關聯的值區。Trusted Cloud

表格會列出每個記錄檔儲存區的下列屬性:

  • 名稱:記錄值區的名稱。
  • 說明:值區的說明。
  • 保留期限:Cloud Logging 儲存值區資料的天數。
  • 區域:儲存 bucket 資料的地理位置。
  • 狀態:顯示儲存空間是否已鎖定

如果 Cloud Logging 正在刪除值區,該值區的表格項目會標註 警告符號。

gcloud

執行 gcloud logging buckets list 指令:

gcloud logging buckets list

您會看到記錄 bucket 的下列屬性:

  • LOCATION:儲存值區資料的區域
  • BUCKET_ID:記錄值區的名稱。
  • RETENTION_DAYS:Cloud Logging 儲存值區資料的天數。
  • LIFECYCLE_STATE:指出 Cloud Logging 是否正在刪除值區。
  • LOCKED:儲存空間是否已鎖定或解鎖。
  • CREATE_TIME:表示 bucket 建立時間的時間戳記。
  • UPDATE_TIME:時間戳記,表示 Bucket 上次修改時間。

您也可以只查看一個值區的屬性。舉例來說,如要查看 global 區域中 _Default 記錄儲存空間的詳細資料,請執行 gcloud logging buckets describe 指令:

gcloud logging buckets describe _Default --location=global

REST

如要列出與 Trusted Cloud 專案相關聯的記錄值區,請使用 Logging API 中的 projects.locations.buckets.list

查看值區詳細資料

如要查看單一記錄儲存區的詳細資料,請執行下列操作:

Trusted Cloud 控制台

在 Trusted Cloud 控制台中,前往「Logs Storage」(記錄檔儲存空間) 頁面:

前往「Logs Storage」(記錄檔儲存空間)

如果您是使用搜尋列尋找這個頁面,請選取子標題為「Logging」的結果

在記錄 bucket 上,按一下「更多」圖示 ,然後選取「查看 bucket 詳細資料」

對話方塊會列出記錄值區的下列屬性:

  • 名稱:記錄值區的名稱。
  • 說明:記錄檔值區的說明。
  • 保留期限:Cloud Logging 儲存值區資料的天數。
  • 區域:儲存 bucket 資料的地理位置。

gcloud

執行 gcloud logging buckets describe 指令。

舉例來說,下列指令會回報 _Default 儲存空間的詳細資料:

gcloud logging buckets describe _Default --location=global

您會看到記錄 bucket 的下列屬性:

  • createTime:表示 bucket 建立時間的時間戳記。
  • description:記錄值區的說明。
  • lifecycleState:指出 Cloud Logging 是否正在刪除值區。
  • name:記錄值區的名稱。
  • retentionDays:Cloud Logging 儲存值區資料的天數。
  • updateTime:時間戳記,表示 Bucket 上次修改時間。

REST

如要查看單一記錄儲存空間的詳細資料,請在 Logging API 中使用 projects.locations.buckets.get

刪除值區

您可以刪除符合下列任一條件的記錄檔值區:

  • 記錄檔值區已解鎖
  • 記錄檔值區已鎖定,且記錄檔值區中的所有記錄項目都已達到值區的保留期限。

如果記錄檔值區儲存的記錄項目尚未達到值區的保留期限,您就無法刪除已鎖定更新的記錄檔值區。

發出刪除指令後,記錄檔儲存空間會轉換為 DELETE_REQUESTED 狀態,並維持該狀態 7 天。在這段期間,記錄服務會繼續將記錄傳送至記錄儲存空間。如要停止將記錄檔轉送至記錄檔 bucket,請刪除或修改將記錄檔項目轉送至 bucket 的記錄檔接收器。

您無法建立與 DELETE_REQUESTED 狀態的記錄值區同名的新記錄值區。

如要刪除記錄值區,請按照下列步驟操作:

Trusted Cloud 控制台

如要刪除記錄值區,請按照下列步驟操作:

  1. 在 Trusted Cloud 控制台中,前往「Logs Storage」(記錄檔儲存空間) 頁面:

    前往「Logs Storage」(記錄檔儲存空間)

    如果您是使用搜尋列尋找這個頁面,請選取子標題為「Logging」的結果

  2. 找到要刪除的 bucket,然後按一下「更多」

  3. 選取「刪除值區」

  4. 在確認面板中,按一下「刪除」

  5. 在「記錄儲存空間」頁面中,值區會顯示待刪除的指標。值區 (包括其中的所有記錄) 會在 7 天後刪除。

gcloud

如要刪除記錄值區,請執行 gcloud logging buckets delete 指令:

gcloud logging buckets delete BUCKET_ID --location=LOCATION

如果記錄檔 bucket 連結了 BigQuery 資料集,您就無法刪除該 bucket:

REST

如要刪除 bucket,請在 Logging API 中使用 projects.locations.buckets.delete

還原已刪除的 bucket

您可以還原或取消刪除處於待刪除狀態的記錄值區。如要還原記錄 bucket,請按照下列步驟操作:

Trusted Cloud 控制台

如要還原待刪除的記錄 bucket,請按照下列步驟操作:

  1. 在 Trusted Cloud 控制台中,前往「Logs Storage」(記錄檔儲存空間) 頁面:

    前往「Logs Storage」(記錄檔儲存空間)

    如果您是使用搜尋列尋找這個頁面,請選取子標題為「Logging」的結果

  2. 找出要還原的值區,然後依序按一下「更多」圖示 和「還原已刪除的值區」

  3. 在確認面板中,按一下「還原」

  4. 「記錄檔儲存空間」頁面會移除記錄檔 bucket 的待刪除指標。

gcloud

如要還原待刪除的記錄 bucket,請執行 gcloud logging buckets undelete 指令:

gcloud logging buckets undelete BUCKET_ID --location=LOCATION

REST

如要還原待刪除的 bucket,請在 Logging API 中使用 projects.locations.buckets.undelete

寫入 bucket

您不會直接將記錄檔寫入記錄檔值區。而是將記錄寫入Trusted Cloud 資源:專案、資料夾或機構。 Trusted Cloud 父項資源中的接收器會將記錄傳送至目的地,包括記錄儲存空間。當記錄檔符合接收器的篩選條件,且接收器有權將記錄檔轉送至記錄檔 bucket 時,接收器就會將記錄檔轉送至記錄檔 bucket 目的地。

從 bucket 讀取

每個記錄檔值區都有一組記錄檢視畫面。如要從記錄檔值區讀取記錄,您需要記錄檔值區的記錄檢視存取權。您可以透過記錄檢視畫面,只授予使用者存取記錄檔值區中部分記錄的權限。如要瞭解如何設定記錄檢視畫面,以及如何授予特定記錄檢視畫面的存取權,請參閱「在記錄儲存區中設定記錄檢視畫面」。

如要從記錄檔儲存空間讀取記錄,請按照下列步驟操作:

Trusted Cloud 控制台

  1. 前往 Trusted Cloud 控制台的「Logs Explorer」頁面:

    前往「Logs Explorer」(記錄檔探索工具)

    如果您是使用搜尋列尋找這個頁面,請選取子標題為「Logging」的結果

  2. 如要自訂記錄檔探索工具中顯示的記錄,請按一下「Refine scope」(縮小範圍),然後選取選項。舉例來說,您可以查看專案或記錄檢視中儲存的記錄。

  3. 按一下 [套用]。「Query results」(查詢結果) 窗格會重新載入,並顯示符合所選選項的記錄。

詳情請參閱「記錄檔總覽:縮小範圍」。

gcloud

如要從記錄值區讀取記錄,請使用 gcloud logging read 指令並新增 LOG_FILTER 選取資料:

gcloud logging read LOG_FILTER --bucket=BUCKET_ID --location=LOCATION --view=LOG_VIEW_ID

REST

如要從記錄 bucket 讀取記錄,請使用 entries.list 方法。設定 resourceNames 指定適當的值區和記錄檢視畫面,並設定 filter 選取資料。

如要進一步瞭解篩選語法,請參閱記錄查詢語言

排解常見問題

如果使用記錄檔儲存空間時遇到問題,請參閱下列疑難排解步驟和常見問題的解答。

為什麼我無法刪除這個值區?

如要刪除值區,請按照下列步驟操作:

  • 確認您具備刪除值區的適當權限。如需必要權限清單,請參閱「使用 IAM 控管存取權」。

  • 列出 bucket 的屬性,判斷 bucket 是否已鎖定。如果 bucket 已鎖定,請檢查 bucket 的保留期限。您必須等待值區中的所有記錄檔達到保留期限,才能刪除鎖定的值區。

哪些服務帳戶會將記錄檔轉送至我的值區?

如要判斷是否有任何服務帳戶具備將記錄檔傳送至值區的 IAM 權限,請按照下列步驟操作:

  1. 前往 Trusted Cloud 控制台的「IAM」IAM頁面:

    前往 IAM

    如果您是使用搜尋列尋找這個頁面,請選取子標題為「IAM & Admin」(IAM 與管理) 的結果

  2. 在「權限」分頁中,依「角色」查看。您會看到表格,其中列出與Trusted Cloud 專案相關聯的所有 IAM 角色和主體。

  3. 在表格的「Filter」(篩選器) 文字方塊 中,輸入「Logs Bucket Writer」

    您會看到具備「記錄儲存空間寫入者」角色的所有主體。如果主體是服務帳戶,其 ID 會包含 s3ns-system.iam.gserviceaccount.com 字串。

  4. 選用:如要移除服務帳戶,使其無法將記錄檔傳送至 Trusted Cloud 專案,請選取服務帳戶的核取方塊,然後按一下「移除」

即使我已從 _Default接收器排除專案,為什麼還是會看到該專案的記錄? Trusted Cloud

您可能正在集中式 Trusted Cloud 專案的記錄值區中查看記錄,該專案會匯總整個機構的記錄。

如果您使用記錄檔探索工具存取這些記錄,並看到從 _Default 接收器排除的記錄,則檢視畫面可能設為Trusted Cloud 專案層級。

如要修正這個問題,請在「縮小範圍」選單中選取「記錄檢視」,然後選取與專案中 _Default 值區相關聯的記錄檢視Trusted Cloud 。您應該不會再看到排除的記錄。

後續步驟

如要瞭解記錄儲存區 API 方法,請參閱LogBucket參考說明文件。

如果您管理機構或資料夾,可以指定子項資源的 _Default_Required 記錄檔儲存空間位置。您也可以設定記錄檔儲存空間是否使用 CMEK,以及 _Default 記錄檔接收器的行為。詳情請參閱「調整機構和資料夾的預設設定」。

如要瞭解如何使用記錄值區處理常見用途,請參閱下列主題: