產生 Gemini Code Assist 指標

本文說明如何產生 Gemini Code Assist 指標。舉例來說,您可以產生指標,回報各種 Google Cloud 產品的每日活躍用量或程式碼建議接受情形,包括 Cloud Logging、Google Cloud CLI、Cloud Monitoring 和 BigQuery。

如要啟用及查看 Gemini for Google Cloud提示、回覆和中繼資料記錄,請參閱「查看 Gemini for Google Cloud 記錄」。

事前準備

  • 確認已在專案中設定 Gemini Code Assist
  • 確認已在專案中啟用 Gemini 記錄 Google Cloud

  • In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

列出不重複使用者人數

以下操作說明如何使用 gcloud CLI,列出最近 28 天內 Gemini Code Assist 的不重複使用者人數:

  1. 在 Shell 環境中,請確認已將所有已安裝的 gcloud CLI 元件更新至最新版本:

    gcloud components update
    
  2. 讀取 Gemini Code Assist 使用者和使用情況的記錄項目:

    gcloud logging read 'resource.type=cloudaicompanion.googleapis.com/Instance labels.product=~"code_assist"' \
    --freshness 28d \
    --project PROJECT_ID \
    --format "csv(timestamp.date('%Y-%m-%d'),labels.user_id)"
    

    PROJECT_ID 替換為您的 Google Cloud 專案 ID。

    您可以使用 Unix 指令 uniq,每天識別不重複的使用者。

    輸出結果會與下列內容相似:

    2024-10-30,user1@company.com
    2024-10-29,user2@company.com
    2024-10-29,user2@company.com
    2024-10-29,user2@company.com
    2024-10-29,user1@company.com
    2024-10-28,user1@company.com
    

建立顯示每日用量的圖表

下列步驟說明如何使用 Monitoring 建立每日使用圖表,顯示每日活躍 Gemini Code Assist 使用者總數,以及每天的要求數量。

  1. 根據記錄資料建立 Monitoring 指標,記錄 Gemini Code Assist 使用者人數:

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

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

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

    2. 在查詢窗格中輸入下列查詢,然後按一下「執行查詢」

       resource.type="cloudaicompanion.googleapis.com/Instance" AND labels.product="code_assist" AND jsonPayload.@type="type.googleapis.com/google.cloud.cloudaicompanion.logging.v1.ResponseLog"
      
    3. 在工具列中,按一下「動作」,然後選取「建立指標」

      系統會顯示「建立記錄指標」對話方塊。

    4. 設定下列指標詳細資料:

      • 確認「指標類型」已設為「計數器」
      • 將指標命名為 code_assist_example
      • 確認「篩選器選取」已設為指向記錄的儲存位置,也就是「專案」或「儲存區」

        如要瞭解如何從記錄資料產生 Monitoring 指標,請參閱「記錄指標總覽」的說明。

    5. 點選「建立指標」

      系統會顯示成功橫幅,說明指標已建立。

    6. 在該成功橫幅中,按一下「在 Metrics Explorer 中查看」

      系統會開啟 Metrics Explorer,並顯示預先設定的圖表。

  2. 將圖表儲存至資訊主頁:

    1. 按一下工具列中的「儲存圖表」
    2. 選用:更新圖表標題。
    3. 使用「資訊主頁」選單選取現有的自訂資訊主頁,或建立新的資訊主頁。
    4. 按一下「儲存圖表」

使用 BigQuery 分析用量

下列步驟說明如何使用 BigQuery 分析記錄資料。

您可以使用兩種方法在 BigQuery 中分析記錄資料:

  • 建立記錄接收器,並將記錄資料匯出至 BigQuery 資料集。
  • 升級儲存記錄檔資料的記錄檔 bucket,即可使用記錄檔分析,然後建立連結的 BigQuery 資料集。

無論採用哪種方法,您都可以使用 SQL 查詢及分析記錄檔資料,並繪製這些查詢的結果圖表。如果您使用 Log Analytics,則可將圖表儲存至自訂資訊主頁。不過,兩者價格不同。詳情請參閱「記錄分析定價」和「BigQuery 定價」。

本節說明如何建立記錄接收器,將選取的記錄項目匯出至 BigQuery,並提供範例查詢清單。如要進一步瞭解記錄分析,請參閱「使用記錄分析查詢及分析記錄」和「查詢連結的 BigQuery 資料集」。

建立記錄接收器

  1. 前往 Google Cloud 控制台的「記錄檔路由器」頁面:

    前往「記錄檔路由器」

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

  2. 選取要轉送的記錄項目所屬的 Google Cloud 專案。
  3. 選取「建立接收器」
  4. 在「接收器詳細資料」面板中,輸入下列詳細資料:

    • 在「接收器名稱」中,提供接收器的 ID。接收器建立後就無法重新命名,但可以刪除並建立新的接收器。

    • 在「Sink description」(接收器說明) 欄位中,說明接收器的用途或應用情境。

  5. 在「接收器目的地」面板中,設定下列詳細資料:

    • 在「選取接收器服務」中,選取「BigQuery 資料集」
    • 在「選取 BigQuery 資料集」中,建立新的 BigQuery 資料集,並將其命名為 code_assist_bq
  6. 開啟「選擇要納入接收器的記錄檔」面板,並在「建構納入篩選器」欄位中輸入下列內容:

    resource.type="cloudaicompanion.googleapis.com/Instance" AND labels.product="code_assist"
    
  7. 選用:如要確認輸入的篩選器正確無誤,請選取「預覽記錄」。系統會在新的分頁中開啟記錄檔探索工具,並預先填入篩選條件。

  8. 按一下「Create Sink」(建立接收器)

授權記錄接收器將記錄項目寫入資料集

如果您擁有 BigQuery 資料集的擁有者存取權,Cloud Logging 會授予記錄檔接收器寫入記錄資料的必要權限。

如果沒有擁有者存取權,或資料集中沒有任何項目,表示記錄接收器可能沒有必要權限。如要解決這項問題,請按照「設定目的地權限」一文中的操作說明進行。

查詢

您可以使用下列 BigQuery 查詢範例,產生每日活躍使用人數和產生的建議等使用者層級和匯總層級資料。

使用下列查詢範例前,請先取得新建立接收器的完整路徑。如要取得路徑,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「BigQuery」頁面。

    前往 BigQuery

  2. 在資源清單中,找出名為 code_assist_bq 的資料集。這項資料是接收器目的地

  3. code_assist_bq_dataset 下方選取回應資料表,按一下 圖示,然後按一下「複製 ID」產生資料集 ID。請記下這個值,以便在後續章節中做為 GENERATED_BIGQUERY_TABLE 變數使用。

列出每日的個別使用者

SELECT DISTINCT labels.user_id as user, DATE(timestamp) as use_date
FROM GENERATED_BIGQUERY_TABLE
ORDER BY use_date

GENERATED_BIGQUERY_TABLE 替換為您在建立接收器的先前步驟中記下的 BigQuery 回應資料表完整路徑。

列出每日匯總使用者

SELECT COUNT(DISTINCT labels.user_id) as total_users, DATE(timestamp) as use_date
FROM GENERATED_BIGQUERY_TABLE
GROUP BY use_date
ORDER BY use_date

依使用者列出每日的個別要求

SELECT COUNT(*), DATE(timestamp) as use_date, labels.user_id as user
FROM GENERATED_BIGQUERY_TABLE
GROUP BY use_date, user
ORDER BY use_date

依日期列出每日匯總要求

SELECT COUNT(*), DATE(timestamp) as use_date
FROM GENERATED_BIGQUERY_TABLE
GROUP BY use_date
ORDER BY use_date

後續步驟