正在加载…
未找到任何结果。

在 Google Cloud 控制台中运用您的技能

访问 700 多个实验和课程

使用記錄檔分析工具評估 BigQuery 使用情形

实验 45 分钟 universal_currency_alt 1 积分 show_chart 入门级
info 此实验可能会提供 AI 工具来支持您学习。
访问 700 多个实验和课程

GSP1250

Google Cloud 自學實驗室標誌

總覽

雖然 BigQuery 內建觀測功能,例如 INFORMATION_SCHEMA view,但要深入分析用量、稽核及排解潛在問題,仍須仰賴詳細的記錄。啟用記錄檔分析後,您就能使用熟悉的 SQL 查詢及分析記錄檔資料,然後查看查詢結果或繪製成圖表。

BigQuery 是 Google Cloud 的全代管企業資料倉儲,內建機器學習、地理空間分析和商業智慧等功能,有助於管理及分析資料。

在本實驗室中,您將在記錄檔儲存空間 bucket 中啟用記錄檔分析功能,然後在 Cloud Logging 中查看 BigQuery 記錄檔。您也會透過記錄檔分析工具,使用 SQL 分析記錄檔。

目標

在本實驗室中,您將瞭解如何執行下列工作:

  • 有效運用 Cloud Logging,深入瞭解 BigQuery 使用情形。
  • 使用記錄檔分析功能,有效建構及執行 SQL 查詢。
  • 查看結果並繪製成圖表。

設定和需求

瞭解以下事項後,再點選「Start Lab」按鈕

請詳閱以下操作說明。實驗室活動會計時,且中途無法暫停。點選「Start Lab」後就會開始計時,顯示可使用 Google Cloud 資源的時間。

您將在真正的雲端環境完成實作實驗室活動,而不是模擬或示範環境。為此,我們會提供新的暫時憑證,供您在實驗室活動期間登入及存取 Google Cloud。

為了順利完成這個實驗室,請先確認:

  • 可以使用標準的網際網路瀏覽器 (Chrome 瀏覽器為佳)。
注意事項:請使用無痕模式 (建議選項) 或私密瀏覽視窗執行此實驗室,這可以防止個人帳戶和學員帳戶之間的衝突,避免個人帳戶產生額外費用。
  • 是時候完成實驗室活動了!別忘了,活動一旦開始將無法暫停。
注意事項:務必使用實驗室專用的學員帳戶。如果使用其他 Google Cloud 帳戶,可能會產生額外費用。

如何開始研究室及登入 Google Cloud 控制台

  1. 點選「Start Lab」按鈕。如果實驗室會產生費用,畫面上會出現選擇付款方式的對話方塊。左側的「Lab Details」窗格會顯示下列項目:

    • 「Open Google Cloud console」按鈕
    • 剩餘時間
    • 必須在這個研究室中使用的臨時憑證
    • 完成這個實驗室所需的其他資訊 (如有)
  2. 點選「Open Google Cloud console」;如果使用 Chrome 瀏覽器,也能按一下滑鼠右鍵,選取「在無痕視窗中開啟連結」

    接著,實驗室會啟動相關資源,並開啟另一個分頁,顯示「登入」頁面。

    提示:您可以在不同的視窗中並排開啟分頁。

    注意:如果頁面中顯示「選擇帳戶」對話方塊,請點選「使用其他帳戶」
  3. 如有必要,請將下方的 Username 貼到「登入」對話方塊。

    {{{user_0.username | "Username"}}}

    您也可以在「Lab Details」窗格找到 Username。

  4. 點選「下一步」

  5. 複製下方的 Password,並貼到「歡迎使用」對話方塊。

    {{{user_0.password | "Password"}}}

    您也可以在「Lab Details」窗格找到 Password。

  6. 點選「下一步」

    重要事項:請務必使用實驗室提供的憑證,而非自己的 Google Cloud 帳戶憑證。 注意:如果使用自己的 Google Cloud 帳戶來進行這個實驗室,可能會產生額外費用。
  7. 按過後續的所有頁面:

    • 接受條款及細則。
    • 由於這是臨時帳戶,請勿新增救援選項或雙重驗證機制。
    • 請勿申請免費試用。

Google Cloud 控制台稍後會在這個分頁開啟。

注意:如要使用 Google Cloud 產品和服務,請點選「導覽選單」,或在「搜尋」欄位輸入服務或產品名稱。「導覽選單」圖示和搜尋欄位

啟動 Cloud Shell

Cloud Shell 是搭載多項開發工具的虛擬機器,提供永久的 5 GB 主目錄,而且在 Google Cloud 中運作。Cloud Shell 提供指令列存取權,方便您使用 Google Cloud 資源。

  1. 點按 Google Cloud 控制台頂端的「啟用 Cloud Shell」圖示 「啟動 Cloud Shell」圖示

  2. 系統顯示視窗時,請按照下列步驟操作:

    • 繼續操作 Cloud Shell 視窗。
    • 授權 Cloud Shell 使用您的憑證發出 Google Cloud API 呼叫。

連線建立完成即代表已通過驗證,而且專案已設為您的 Project_ID。輸出內容中有一行文字,宣告本工作階段的 Project_ID

Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}

gcloud 是 Google Cloud 的指令列工具,已預先安裝於 Cloud Shell,並支援 Tab 鍵自動完成功能。

  1. (選用) 您可以執行下列指令來列出使用中的帳戶:
gcloud auth list
  1. 點按「授權」

輸出內容:

ACTIVE: * ACCOUNT: {{{user_0.username | "ACCOUNT"}}} To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (選用) 您可以使用下列指令來列出專案 ID:
gcloud config list project

輸出內容:

[core] project = {{{project_0.project_id | "PROJECT_ID"}}} 注意:如需 gcloud 的完整說明,請前往 Google Cloud 參閱 gcloud CLI 總覽指南

工作 1:設定記錄檔 bucket

在這項工作中,您將設定 Cloud Logging,升級已啟用記錄檔分析的現有記錄檔 bucket。

如要升級現有 bucket 以使用記錄檔分析功能,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台,在標題列的「搜尋」欄位輸入記錄檔儲存空間,然後點選搜尋結果中的「記錄檔儲存空間」

「記錄檔儲存空間」頁面隨即開啟。「記錄檔 bucket」清單中會列出兩個 bucket:_Default_Required

  1. 針對 _Required 記錄檔 bucket,點選「可使用記錄檔分析」欄下方的「升級」。
  2. 再次點選「升級」,確認升級並使用記錄檔分析功能。
  3. _Default 記錄檔 bucket 執行相同操作。點選「可使用記錄檔分析」欄下方的「升級」
  4. 再次點選「升級」,確認升級並使用記錄檔分析功能。

點選「Check my progress」,確認目標已達成。 升級記錄檔 bucket。

工作 2:執行 BigQuery 活動

在這項工作中,您將生成 BigQuery 記錄檔,並會用到 BigQuery 指令列工具 bq

  1. 在 Cloud Shell 輸入 bq mk 指令,在專案中建立名為 bq_logsbq_logs_test 的新資料集:
bq mk bq_logs bq mk bq_logs_test
  1. 輸入 bq ls 指令,列出資料集:
bq ls
  1. 輸入 bq rm 指令來刪除資料集 (出現提示訊息時,請選取「Y」):
bq rm bq_logs_test
  1. 建立新的資料表:
bq mk \ --table \ --expiration 3600 \ --description "This is a test table" \ bq_logs.test_table \ id:STRING,name:STRING,address:STRING

您應該會看到成功訊息,指出已為資料集新建名為 test_table 的空資料表。

接著執行一些查詢來生成記錄檔。

  1. 在 Cloud Shell 中輸入下列查詢:
bq query --use_legacy_sql=false 'SELECT current_date'
  1. 將以下指令複製到 Cloud Shell:
bq query --use_legacy_sql=false \ 'SELECT gsod2021.date, stations.usaf, stations.wban, stations.name, stations.country, stations.state, stations.lat, stations.lon, stations.elev, gsod2021.temp, gsod2021.max, gsod2021.min, gsod2021.mxpsd, gsod2021.gust, gsod2021.fog, gsod2021.hail FROM `bigquery-public-data.noaa_gsod.gsod2021` gsod2021 INNER JOIN `bigquery-public-data.noaa_gsod.stations` stations ON gsod2021.stn = stations.usaf AND gsod2021.wban = stations.wban WHERE stations.country = "US" AND gsod2021.date = "2021-12-15" AND stations.state IS NOT NULL AND gsod2021.max != 9999.9 ORDER BY gsod2021.min;'

(這個查詢使用美國國家海洋暨大氣總署 (NOAA) 的天氣資料)

點選「Check my progress」,確認目標已達成。 執行 BigQuery 活動。

工作 3:執行記錄檔分析

這項工作會分析您在前一項工作中建立的記錄檔資料。

挑戰 (視情況回答):執行查詢前,請說明您預期會有什麼樣的結果。

查詢特定作業

分析 BigQuery 使用情形時,經常需要搜尋資料集的特定作業。在這項工作中,您將查詢建立和刪除作業。

  1. 在左側窗格中,點選「記錄檔分析」,然後在「記錄檔分析」部分找到「查詢」欄位。

  2. 在「查詢」欄位中輸入或貼上下列查詢,然後點按「執行查詢」,找出建立和刪除作業:

SELECT timestamp, severity, resource.type, proto_payload.audit_log.authentication_info.principal_email, proto_payload.audit_log.method_name, proto_payload.audit_log.resource_name, FROM `{{{ project_0.project_id | "Project ID" }}}.global._Required._AllLogs` WHERE log_id = 'cloudaudit.googleapis.com/activity' AND proto_payload.audit_log.method_name LIKE 'datasetservice%' LIMIT 100

查詢應輸出三個結果。

您也可以使用更多具體的條件限制搜尋範圍,例如 method_name = 'datasetservice.delete'

查詢 BigQuery 資料表的作業

  1. 如要找出 BigQuery 資料表的作業,請將查詢條件改為資料表服務。執行下列查詢,找出資料表的建立或刪除作業:
SELECT timestamp, severity, resource.type, proto_payload.audit_log.authentication_info.principal_email, proto_payload.audit_log.method_name, proto_payload.audit_log.resource_name, FROM `{{{ project_0.project_id | "Project ID" }}}.global._Required._AllLogs` WHERE log_id = 'cloudaudit.googleapis.com/activity' AND proto_payload.audit_log.method_name LIKE '%TableService%' LIMIT 100

這項查詢會輸出一個結果。

  1. 如要查看已完成的 BigQuery 查詢,請根據 jobCompletedEvent 搜尋 data_access 記錄。例如,執行下列 SQL 查詢:
SELECT timestamp, resource.labels.project_id, proto_payload.audit_log.authentication_info.principal_email, JSON_VALUE(proto_payload.audit_log.service_data.jobCompletedEvent.job.jobConfiguration.query.query) AS query, JSON_VALUE(proto_payload.audit_log.service_data.jobCompletedEvent.job.jobConfiguration.query.statementType) AS statementType, JSON_VALUE(proto_payload.audit_log.service_data.jobCompletedEvent.job.jobStatus.error.message) AS message, JSON_VALUE(proto_payload.audit_log.service_data.jobCompletedEvent.job.jobStatistics.startTime) AS startTime, JSON_VALUE(proto_payload.audit_log.service_data.jobCompletedEvent.job.jobStatistics.endTime) AS endTime, CAST(TIMESTAMP_DIFF( CAST(JSON_VALUE(proto_payload.audit_log.service_data.jobCompletedEvent.job.jobStatistics.endTime) AS TIMESTAMP), CAST(JSON_VALUE(proto_payload.audit_log.service_data.jobCompletedEvent.job.jobStatistics.startTime) AS TIMESTAMP), MILLISECOND)/1000 AS INT64) AS run_seconds, CAST(JSON_VALUE(proto_payload.audit_log.service_data.jobCompletedEvent.job.jobStatistics.totalProcessedBytes) AS INT64) AS totalProcessedBytes, CAST(JSON_VALUE(proto_payload.audit_log.service_data.jobCompletedEvent.job.jobStatistics.totalSlotMs) AS INT64) AS totalSlotMs, JSON_VALUE(proto_payload.audit_log.service_data.jobCompletedEvent.job.jobStatistics.referencedTables) AS tables_ref, CAST(JSON_VALUE(proto_payload.audit_log.service_data.jobCompletedEvent.job.jobStatistics.totalTablesProcessed) AS INT64) AS totalTablesProcessed, CAST(JSON_VALUE(proto_payload.audit_log.service_data.jobCompletedEvent.job.jobStatistics.queryOutputRowCount) AS INT64) AS queryOutputRowCount, severity FROM `{{{ project_0.project_id | "Project ID" }}}.global._Default._AllLogs` WHERE log_id = "cloudaudit.googleapis.com/data_access" AND proto_payload.audit_log.service_data.jobCompletedEvent IS NOT NULL ORDER BY startTime

捲動查看兩項結果,並查看「查詢」欄。畫面會列出已完成的 BigQuery 查詢。由於查詢字串包含在 SQL 查詢中,因此結果可能會很大。

工作 4:建立圖表

除了以資料表呈現結果,記錄檔分析功能也支援建立圖表。

  1. 在結果檢視畫面中點選「圖表」按鈕,
  2. 選取「圓餅圖」做為圖表類型,並選取「查詢」做為資料欄。
  3. 圖表應如下所示:

記錄檔分析結果的圓餅圖

恭喜!

您已實際操作 Cloud Logging 和記錄檔分析,瞭解如何建立查詢、繪製結果圖表,以及深入分析 BigQuery 使用情形。

後續步驟/瞭解詳情

Google Cloud 教育訓練與認證

協助您瞭解如何充分運用 Google Cloud 的技術。我們的課程會介紹專業技能和最佳做法,讓您可以快速掌握要領並持續進修。我們提供從基本到進階等級的訓練課程,並有隨選、線上和虛擬課程等選項,方便您抽空參加。認證可協助您驗證及證明自己在 Google Cloud 技術方面的技能和專業知識。

使用手冊上次更新日期:2025 年 5 月 2 日

實驗室上次測試日期:2025 年 5 月 2 日

Copyright 2025 Google LLC 保留所有權利。Google 和 Google 標誌是 Google LLC 的商標,其他公司和產品名稱則有可能是其關聯公司的商標。

准备工作

  1. 实验会创建一个 Google Cloud 项目和一些资源,供您使用限定的一段时间
  2. 实验有时间限制,并且没有暂停功能。如果您中途结束实验,则必须重新开始。
  3. 在屏幕左上角,点击开始实验即可开始

使用无痕浏览模式

  1. 复制系统为实验提供的用户名密码
  2. 在无痕浏览模式下,点击打开控制台

登录控制台

  1. 使用您的实验凭证登录。使用其他凭证可能会导致错误或产生费用。
  2. 接受条款,并跳过恢复资源页面
  3. 除非您已完成此实验或想要重新开始,否则请勿点击结束实验,因为点击后系统会清除您的工作并移除该项目

此内容目前不可用

一旦可用,我们会通过电子邮件告知您

太好了!

一旦可用,我们会通过电子邮件告知您

一次一个实验

确认结束所有现有实验并开始此实验

使用无痕浏览模式运行实验

请使用无痕模式或无痕式浏览器窗口运行此实验。这可以避免您的个人账号与学生账号之间发生冲突,这种冲突可能导致您的个人账号产生额外费用。