使用 Log Analytics 查詢及分析記錄檔

本文說明如何查詢及分析儲存在已升級為使用記錄檔分析的記錄檔 bucket 中的記錄資料。您可以使用 SQL 查詢這些 buckets 中的記錄,藉此篩選及匯總記錄。您也可以使用查詢建立工具建構查詢,不必手動撰寫 SQL 查詢。如要查看查詢結果,可以使用表格,也可以透過圖表呈現資料。這些表格和圖表可以儲存至自訂資訊主頁。

您可以查詢記錄檔值區中的記錄檢視畫面,或數據分析檢視畫面。查詢記錄檢視畫面時,結構定義會對應至 LogEntry 資料結構。由於資料檢視的建立者會決定結構定義,因此資料檢視的用途之一,就是將 LogEntry 格式的記錄資料轉換成更適合您的格式。

您可以使用記錄檔探索工具,查看專案中記錄檔 bucket 儲存的記錄項目,無論記錄檔 bucket 是否已升級為使用 Log Analytics 皆可。

記錄分析不會重複記錄項目,這可能會影響您編寫查詢的方式。此外,使用 Log Analytics 時會有一些限制。 如要進一步瞭解這些主題,請參閱下列文件:

關於連結的資料集

記錄分析支援建立連結的 BigQuery 資料集,讓 BigQuery 擁有基礎資料的讀取權限。如果選擇建立連結的資料集,則可以執行下列操作:

本文不會說明如何建立連結的資料集,也不會說明如何設定 Log Analytics,以便在預留的時段執行查詢。如要瞭解這些主題,請參閱「在 BigQuery 中查詢連結的資料集」。

事前準備

本節說明使用記錄分析前必須完成的步驟。

設定記錄檔 bucket

確認記錄檔 bucket 已升級為使用 Log Analytics:

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

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

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

  2. 針對要查詢的記錄檢視區塊所屬的每個記錄檔值區,請確認「可用的記錄分析」欄顯示「開啟」。如果顯示「升級」,請按一下「升級」並完成對話方塊。

設定 IAM 角色和權限

本節說明使用記錄檔分析功能所需的 IAM 角色或權限:

  • 如要取得使用記錄檔分析和查詢記錄檔檢視畫面所需的權限,請要求管理員將專案的下列 IAM 角色授予您:

    如要將主體限制為特定記錄檢視畫面,請在專案層級授予記錄檢視畫面存取者角色時新增 IAM 條件,或是在記錄檢視畫面的政策檔案中新增 IAM 繫結。詳情請參閱控管記錄檢視畫面存取權

    您必須具備這些權限,才能在「記錄檔探索器」頁面查看記錄項目。如要瞭解查詢使用者定義值區中的檢視畫面,或查詢 _Default 記錄檔值區的 _AllLogs 檢視畫面時,需要哪些其他角色,請參閱「Cloud Logging 角色」。

  • 如要取得查詢 Analytics 檢視畫面所需的權限,請要求管理員授予您專案的「可觀測性 Analytics 使用者」 (roles/observability.analyticsUser) IAM 角色。

查詢記錄檢視畫面或數據分析檢視畫面

排解問題時,您可能想計算符合模式的欄位記錄項目,或計算 HTTP 要求的平均延遲時間。您可以在記錄檢視畫面中執行 SQL 查詢,藉此執行這些動作。

如要在 Analytics 檢視畫面中查詢記錄,可以使用預設查詢、輸入 SQL 查詢,或使用查詢產生器。

載入並執行預設查詢

  1. 在 Google Cloud 控制台中,前往「Log Analytics」(記錄檔分析) 頁面:

    前往「Log Analytics」(記錄檔分析)

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

  2. 如要載入預設查詢,請按照下列步驟操作:

    1. 在「資料檢視」選單中,前往「區隔」「記錄」或「資料表」「數據分析資料檢視」部分,然後選取要查詢的資料檢視。

      如要尋找檢視畫面,可以使用「篩選器」列,也可以捲動清單:

      • 記錄檢視會依 BUCKET_ID.LOG_VIEW_ID 列出,這些欄位是指記錄 bucket 和記錄檢視的 ID。

      • Analytics 資料檢視會依 LOCATION.ANALYTICS_VIEW_ID 列出,其中這些欄位是指 Analytics 資料檢視的位置和 ID。分析檢視畫面目前為公開測試版。

    2. 在「結構定義」工具列中,按一下「查詢」

      「查詢」窗格會更新,顯示查詢所選 Analytics 檢視區的 SQL 查詢。

輸入並執行 SQL 查詢

如要輸入 SQL 查詢,請按照下列步驟操作:

  1. 在 Google Cloud 控制台中,前往「Log Analytics」(記錄檔分析) 頁面:

    前往「Log Analytics」(記錄檔分析)

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

  2. 在「查詢」窗格中,按一下「SQL」 按鈕。

    • 如要指定時間範圍,建議使用時間範圍選取器。如果您可以新增指定 timestamp 欄位的 WHERE 子句,該值就會覆寫時間範圍選取器中的設定,且該選取器會停用。

    • 如需範例,請參閱「查詢範例」。

    • 如要查詢記錄檢視區塊,查詢的 FROM 子句應採用下列格式:

      FROM `PROJECT_ID.LOCATION.BUCKET_ID.LOG_VIEW_ID`
      
    • 如要查詢 Analytics 檢視區,查詢的 FROM 子句應採用下列格式:

      FROM `analytics_view.PROJECT_ID.LOCATION.ANALYTICS_VIEW_ID`
      

    以下說明先前運算式中各個欄位的意義:

    • PROJECT_ID:專案的 ID。
    • LOCATION:記錄檢視畫面或分析資料檢視畫面的位置。
    • BUCKET_ID:記錄值區的名稱或 ID。
    • LOG_VIEW_ID:記錄檢視的 ID,最多 100 個字元,只能包含英文字母、數字、底線和連字號。
    • ANALYTICS_VIEW_ID:Analytics 檢視區塊的 ID,長度上限為 100 個字元,且只能包含英文字母、數字、底線和連字號。
    」。
  3. 執行查詢。

    系統會執行查詢,並在「結果」分頁中顯示查詢結果。您可以使用工具列選項設定查詢格式、清除查詢,以及開啟 BigQuery SQL 參考說明文件。

  4. 查看查詢結果。您可以表格或圖表的形式查看結果。圖表可以儲存至自訂資訊主頁。詳情請參閱「繪製 SQL 查詢結果圖表」。

建構及執行 SQL 查詢

查詢建立工具介面可讓您建立查詢,不必手動編寫 SQL。您可以先使用查詢產生器,然後切換至 SQL 模式,進行更複雜的查詢。

使用查詢產生器建立的查詢有以下限制:

  • 手動撰寫的 SQL 查詢無法翻譯為查詢建構工具。 如要讓兩種模式保持同步,請只在查詢建立工具中進行編輯。

  • 只能選取一個檢視畫面。

  • 您無法彙整資料表或巢狀查詢。

如要使用查詢產生器產生查詢,請從下列選單中進行選取:

  1. 在 Google Cloud 控制台中,前往「Log Analytics」(記錄檔分析) 頁面:

    前往「Log Analytics」(記錄檔分析)

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

  2. 在「Query」(查詢) 窗格中,確認已選取 「Builder」(建立工具) 按鈕。

  3. 使用下列選單建構查詢:

    • 來源:可供選取要用於查詢的檢視畫面。您所做的選取項目會修改查詢中的 FROM 子句。

    • 搜尋所有欄位:尋找符合搜尋字詞或詞組的記錄。

    • 篩選器:可篩選記錄資料中的欄位。

    • 欄位:可指定輸出表格中顯示的資料欄。

    • 排序依據:可指定要排序的資料欄。

    • 限制:可設定輸出資料列數。

  4. 執行查詢。系統會執行查詢,並在「結果」分頁中顯示查詢結果。

    如要調整查詢,請修改在查詢產生器中進行的選取項目,或按一下「Query Editor」(查詢編輯器)「SQL」按鈕,編輯及查看產生的 SQL。

  5. 查看查詢結果。您可以表格或圖表的形式查看結果。圖表可以儲存至自訂資訊主頁。詳情請參閱「繪製 SQL 查詢結果圖表」。

顯示結構定義

結構定義會定義結構,以及每個欄位的資料類型。這項資訊非常重要,因為它會決定您如何建構查詢。舉例來說,假設您想計算 HTTP 要求的平均延遲時間,您需要瞭解如何存取延遲時間欄位,以及延遲時間是儲存為整數 (例如 100) 還是字串 (例如 "100")。如果延遲時間資料是以字串形式儲存,查詢必須先將值轉換為數值,才能計算平均值。

如果資料類型為 JSON,Log Analytics 會自動推斷資料欄的欄位。如要查看這些推斷欄位在資料中出現的頻率,請按一下「選項」,然後選取「查看資訊和說明」

如要找出結構定義,請按照下列步驟操作:

  1. 在 Google Cloud 控制台中,前往「Log Analytics」(記錄檔分析) 頁面:

    前往「Log Analytics」(記錄檔分析)

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

  2. 在「Views」窗格中,找到記錄檢視畫面或分析檢視畫面,然後選取該檢視畫面。

    系統會顯示結構定義。記錄檢視畫面的結構定義是固定的,且對應於 LogEntry 資料結構。如果是分析檢視畫面,您可以修改 SQL 查詢來變更結構定義。

後續步驟