本文說明如何為追蹤資料建立連結的 BigQuery 資料集,以及如何查詢該資料集。連結資料集後,您就能建立及執行查詢,將可觀測性資料與其他業務資料彙整。舉例來說,您可以從 BigQuery Studio 和數據分析查詢連結的資料集。您也可以在 BigQuery 後端執行可觀測性分析查詢。
如要開始使用 Observability Analytics,請參閱「查詢及分析追蹤記錄」。
需要連結資料集時
如要查詢追蹤資料,或查詢追蹤和記錄資料,您不需要連結 BigQuery 資料集。在這些情況下,您可以使用「可觀測性分析」頁面。如要瞭解如何查詢記錄資料,請參閱「使用 Observability Analytics 查詢及分析記錄」。
如要執行下列任一操作,您必須連結 BigQuery 資料集:
- 將追蹤資料與其他 BigQuery 資料集彙整。
- 從其他服務 (例如 BigQuery Studio 頁面或數據分析) 查詢追蹤資料。
- 在 BigQuery 引擎上,從「可觀測性分析」頁面執行查詢。
- 使用警告政策監控 SQL 查詢結果。
建立連結資料集時發生的系統動作
建立連結的資料集時,系統會啟動長時間執行的作業。這項作業會執行下列動作:
- 稽核記錄會記錄建立連結的要求和作業完成情況。
如果監控服務帳戶不存在,Google Cloud Observability 會建立該帳戶。
必須先啟用 Cloud Monitoring API,才能建立這個服務帳戶。
Google Cloud Observability 必須先有服務帳戶,才能建立連結的資料集。 系統會在必要時建立服務帳戶:
Cloud Observability 服務帳戶: 這是連結可觀測性資料集時的必要條件。
Cloud Logging 服務帳戶: 連結記錄檔 bucket 時必須提供。
事前準備
- 登入 Google Cloud 帳戶。如果您是 Google Cloud新手,歡迎 建立帳戶,親自評估產品在實際工作環境中的成效。新客戶還能獲得價值 $300 美元的免費抵免額,可用於執行、測試及部署工作負載。
-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud Monitoring and Observability APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud Monitoring and Observability APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.
建立連結的 BigQuery 資料集
本節說明必須啟用的 API、建立連結資料集所需的角色,以及如何建立連結資料集。
必要條件
- 完成「事前準備」一節中的步驟。
-
如要取得在可觀測性資料集上建立連結所需的權限,請要求系統管理員授予您專案的下列 IAM 角色:
-
可觀測性編輯者 (
roles/observability.editor) -
BigQuery 使用者 (
roles/bigquery.user) -
記錄檢視器 (
roles/logging.viewer)
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
-
可觀測性編輯者 (
在可觀測性資料集上建立連結
gcloud
使用下列任何指令資料之前,請先替換以下項目:
- LINK_ID:BigQuery 資料集的名稱。
- DATASET_ID:資料集 ID。您的追蹤資料會儲存在名為
Spans的資料集中。 - BUCKET_ID:可觀測性 Bucket 的 ID。舉例來說,這個 ID 可能是
_Trace。 - LOCATION:可觀測性 bucket 的位置。
- PROJECT_ID:專案的 ID。
執行
gcloud beta observability buckets datasets links create
指令:
Linux、macOS 或 Cloud Shell
gcloud beta observability buckets datasets links create \ projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID/links/LINK_ID \ --dataset=DATASET_ID\ --bucket=BUCKET_ID \ --location=LOCATION \ --project=PROJECT_ID
Windows (PowerShell)
gcloud beta observability buckets datasets links create ` projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID/links/LINK_ID ` --dataset=DATASET_ID` --bucket=BUCKET_ID ` --location=LOCATION ` --project=PROJECT_ID
Windows (cmd.exe)
gcloud beta observability buckets datasets links create ^ projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID/links/LINK_ID ^ --dataset=DATASET_ID^ --bucket=BUCKET_ID ^ --location=LOCATION ^ --project=PROJECT_ID
create 指令會啟動長時間執行的作業。以下是指令成功時的回應範例:
Create request issued for: [mydataset] Waiting for operation [projects/my-project/locations/us/operations/operation-1775164903749-64e80c9817833-9ff804b6-c3e9cbe7] to complete...done. Created link [mydataset].
REST
如要建立 BigQuery 資料集的連結,請將要求傳送至 projects.locations.buckets.datasets.links.create 端點。
您必須指定父項參數,格式如下:
projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID
上述運算式中的欄位具有下列意義:
- PROJECT_ID:專案的 ID。
- LOCATION:可觀測性 bucket 的位置。
- BUCKET_ID:可觀測性 Bucket 的 ID。舉例來說,這個 ID 可能是
_Trace。 - DATASET_ID:要查詢的資料集 ID。舉例來說,這個 ID 可能是
Spans。
這項指令需要查詢參數和要求主體:
您必須指定查詢參數
linkId,並將其設為 BigQuery 資料集的名稱。例如,linkId="my_link"。BigQuery 資料集名稱在 Google Cloud 專案中必須是唯一的,且長度不得超過 100 個半形字元,只能包含英文字母、數字和底線。要求主體是
Link物件。name欄位的值採用以下格式:projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/dataset/DATASET_ID/links/LINK_ID您為
name欄位提供的值,必須與查詢參數參照的連結 BigQuery 資料集相符。LINK_ID 欄位是 BigQuery 資料集的名稱。
回應為 Operation 物件。
這個物件包含方法進度的相關資訊。方法完成後,Operation 物件會包含狀態資料。
如需 Observability API 端點的完整清單,請參閱 Observability API 參考文件。
從 BigQuery Studio 查詢追蹤資料
本節說明如何從 BigQuery Studio 頁面查詢追蹤資料。
如要瞭解使用 BigQuery 的相關費用,請參閱 BigQuery 定價。
必要條件
- 完成「事前準備」一節中的步驟。
-
如要取得從 BigQuery 查詢連結資料集所需的權限,請要求系統管理員授予您專案或連結資料集的「BigQuery 資料檢視者」 (
roles/bigquery.dataViewer) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。 - 確認名為
_Trace的可觀測性值區有連結的 BigQuery 資料集。如果沒有連結的資料集,請建立一個。
使用 BigQuery Studio
如要從「可觀測性分析」頁面開啟 BigQuery,然後查詢追蹤記錄資料,請按照下列步驟操作:
-
在 Google Cloud 控制台中,前往 manage_search「Log Analytics」(記錄檔分析) 頁面:
如果您是使用搜尋列尋找這個頁面,請選取子標題為「Logging」的結果。
輸入或載入查詢。詳情請參閱「查詢及分析追蹤記錄」。
在工具列中,展開標示為「執行查詢」或「在 BigQuery 中執行」的選單,然後選取「在 BigQuery 中開啟」。
「BigQuery Studio」頁面隨即開啟。在本頁面中,
FROM陳述式會使用 BigQuery Table 路徑語法指定連結的資料集。您可以對查詢執行任何支援的動作,例如編輯查詢。如果「在 BigQuery 中開啟」選項已停用,表示沒有已連結的資料集,或是您沒有必要的權限,無法在 BigQuery 中開啟及查看查詢。
在「BigQuery Studio」頁面中,按一下「執行查詢」。
在 BigQuery 引擎上執行查詢
根據預設,「可觀測性分析」頁面會使用預設查詢引擎執行您撰寫的查詢。您執行的查詢會與所有其他查詢競爭執行序。因此,如果沒有可用的運算單元,查詢執行作業可能會延遲。預設查詢引擎只能查詢可觀測性檢視、記錄檔 bucket 檢視和分析檢視。
建立連結的資料集時,「可觀測性分析」頁面會讓您選擇預設查詢引擎或 BigQuery 引擎。如果您已預留 BigQuery 運算單元,並選擇在 BigQuery 引擎上執行查詢,系統就會使用您預留的運算單元。在 BigQuery 引擎上執行的查詢可以查詢可觀測性檢視區塊、記錄儲存區檢視區塊和分析檢視區塊。這些查詢也可以將可觀測性資料與 BigQuery 資料表合併。
在 BigQuery 引擎上執行查詢主要有兩種用途:
建立以 SQL 為基礎的快訊政策。這些政策的查詢必須在 BigQuery 引擎中執行。
您想將圖表儲存到資訊主頁,該圖表會顯示可觀測性資料和其他業務資料的聯結結果。
FROM子句必須指定觀測資料集或記錄檔 bucket 的檢視畫面,且必須有連結的資料集,才能查詢資料。如要將可觀測性資料與其他業務資料合併,請新增JOIN陳述式,指定 BigQuery 資料表。您必須具備必要的 IAM 權限,才能查詢 BigQuery 資料表。
如要瞭解使用 BigQuery 的相關費用,請參閱 BigQuery 定價。
必要條件
- 完成「事前準備」一節中的步驟。
-
如要取得使用 BigQuery 運算單元,從可觀測性分析執行查詢所需的權限,請要求系統管理員授予您下列 IAM 角色:
-
觀測能力檢視畫面存取子 (
roles/observability.viewAccessor) 在您要查詢的觀測能力檢視畫面中,這個角色支援 IAM 條件,可讓您將授權限制在特定檢視區塊。如果未在角色授予作業中附加條件,主體就能存取所有可觀測性檢視畫面。 -
記錄檢視器 (
roles/logging.viewer) 專案 -
BigQuery 使用者 (
roles/bigquery.user) 專案 -
專案的 BigQuery 工作使用者 (
roles/bigquery.jobUser)
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
-
觀測能力檢視畫面存取子 (
- 確認名為
_Trace的可觀測性值區有連結的 BigQuery 資料集。如果沒有連結的資料集,請建立一個。
如果您打算設定「可觀測性分析」頁面,以便在 BigQuery 運算單元上執行查詢,且您使用的專案具有虛擬私有雲 (VPC) Service Controls,請確認您使用的是 BigQuery Enterprise 版。詳情請參閱瞭解 BigQuery 版本。
使用 BigQuery 引擎
如要在使用「可觀測性分析」頁面時,透過 BigQuery 引擎執行查詢,請按照下列步驟操作:
-
在 Google Cloud 控制台中,前往 manage_search「Log Analytics」(記錄檔分析) 頁面:
如果您是使用搜尋列尋找這個頁面,請選取子標題為「Logging」的結果。
輸入或載入查詢。詳情請參閱「查詢及分析追蹤記錄」。
前往工具列,確認是否顯示標示為「在 BigQuery 上執行」的按鈕。
如果工具列顯示「執行查詢」,請按一下 settings「設定」,然後選取「BigQuery」。
如果「在 BigQuery 中執行」按鈕已停用,表示沒有連結的資料集。如要解決這項失敗問題,請建立連結的 BigQuery 資料集。
按一下「在 BigQuery 執行」。