Mengonfigurasi logging Gemini Code Assist

Dokumen ini menjelaskan cara mengonfigurasi logging Gemini Code Assist untuk project menggunakan konsol atau API. Google Cloud

Batasan

Perekaman data log Gemini di Google Cloud terbatas pada interaksi pengguna dengan Gemini Code Assist dalam IDE.

Selain itu, Gemini untuk Google Cloud tidak mencatat data untuk Gemini Code Assist jika telemetri VS Code dinonaktifkan oleh pengguna.

Sebelum memulai

  • Pastikan Google Cloud project Anda terlampir ke akun penagihan.

(Opsional) Memberikan izin IAM

Untuk mengonfigurasi logging Gemini Code Assist, Anda harus memiliki izin Identity and Access Management (IAM) tertentu, yang dijelaskan di bagian berikut. Pastikan izin ini ditambahkan ke peran IAM kustom.

Atau, Anda dapat memberikan peran bawaan IAM Gemini for Google Cloud Settings Admin (roles/cloudaicompanion.settingsAdmin), yang mencakup semua izin yang diperlukan untuk digunakan dengan semua setelan Gemini untuk Google Cloud administrator.

(Opsional) Mengikat izin ke setelan dan target

Jika Anda mengonfigurasi setelan administrator Gemini Code Assist di konsol Google Cloud , Anda dapat melewati bagian ini.

Untuk mengonfigurasi setelan administrator Gemini Code Assist dengan Gemini for Google Cloud API, Anda harus membuat setelan terlebih dahulu, lalu membuat binding untuk "mengikat" setelan dan target tersebut (seperti instance, topik, atau project) untuk produk tertentu (seperti Gemini Cloud Assist atau Gemini Code Assist).

Semua izin untuk membuat dan memperbarui setelan berada di tingkat project.

Mengonfigurasi logging Gemini Code Assist

Bagian berikut memberikan langkah-langkah yang diperlukan untuk mengaktifkan pengumpulan dan penyimpanan aktivitas Gemini Code Assist di Cloud Logging, termasuk:

  • Perintah dan log respons Gemini Code Assist, seperti input pengguna, informasi kontekstual, dan respons.

  • Log metadata Gemini Code Assist, seperti metadata telemetri dan baris kode yang diterima oleh pengguna.

Untuk mengetahui detail selengkapnya tentang kedua jenis log tersebut, lihat Melihat log Gemini.

Mengaktifkan logging untuk Gemini Code Assist

Pilih salah satu opsi berikut:

Konsol

  1. Pastikan Anda telah mengaktifkan Cloud Logging API di project.

  2. Pastikan Anda memiliki izin Identity and Access Management (IAM) berikut di project yang memiliki langganan:

    • loggingSettings.create
    • loggingSettings.list
    • loggingSettings.update
    • loggingSettings.get
    • cloudaicompanion.instances.loggingSettings.use
    • cloudaicompanion.instances.queryEffectiveSetting
    • settingBindings.loggingSettingsList
    • settingBindings.loggingSettingsGet
    • settingBindings.loggingSettingsUpdate
    • settingBindings.loggingSettingsCreate
    • cloudaicompanion.settingBindings.loggingSettingsUse
    • cloudaicompanion.instances.queryEffectiveSettingBindings
  3. Di konsol Google Cloud , buka halaman Admin untuk Gemini.

    Buka Gemini untuk Google Cloud

    Halaman Gemini untuk Google Cloud akan dimuat.

  4. Klik Setelan di menu navigasi sebelah kiri.

    Halaman Setelan akan dimuat.

  5. (Opsional) Klik Logging for Code Assist metadata untuk mencatat metadata yang dihasilkan oleh pengguna Gemini Code Assist dalam project.

  6. (Opsional) Klik Logging for Code Assist prompts and responses untuk merekam perintah dan respons yang dihasilkan oleh pengguna Gemini Code Assist dalam project.

  7. Klik Simpan Perubahan.

API

Untuk mengaktifkan logging untuk Gemini Code Assist, gunakan metode loggingSetting.

  1. Pastikan Anda telah mengaktifkan Cloud Logging API di project.

  2. Pastikan Anda memiliki izin Identity and Access Management (IAM) berikut di project yang memiliki langganan:

    • loggingSettings.create
    • loggingSettings.list
    • loggingSettings.update
    • loggingSettings.get
    • cloudaicompanion.instances.loggingSettings.use
    • cloudaicompanion.instances.queryEffectiveSetting
    • settingBindings.loggingSettingsList
    • settingBindings.loggingSettingsGet
    • settingBindings.loggingSettingsUpdate
    • settingBindings.loggingSettingsCreate
    • cloudaicompanion.settingBindings.loggingSettingsUse
    • cloudaicompanion.instances.queryEffectiveSettingBindings
  3. Buat setelan dan nilai khusus setelan:

    1. Dapatkan token:

      TOKEN=$(gcloud auth print-access-token)
      
  4. Aktifkan log metadata Gemini Code Assist.

    1. Jalankan perintah berikut untuk membuat setelan:

      curl -X POST \
        -H "Authorization: Bearer $TOKEN" \
        -H 'Content-Type: application/json' \
        -d '{
          "log_metadata": true,
          } ' \
        "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings?logging_setting_id=SETTING_ID"
      

      Ganti kode berikut:

      • CONTAINER_PROJECT_NAME: Masukkan project ID induk.
      • SETTING_ID: Masukkan nama setelan unik, seperti gcalm1 untuk Gemini Code Assist log metadata.

      Jika berhasil, perintah akan menampilkan isi respons yang menunjukkan log_metadata yang ditetapkan ke true:

      {
        "name": "projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings/SETTING_ID",
        "createTime": "2025-01-23T15:22:49.717166932Z",
        "updateTime": "2025-01-23T15:22:49.717166932Z",
        "log_metadata": true
      }
      
    2. Jalankan perintah berikut untuk membuat binding setelan log metadata Gemini Code Assist:

      curl -X POST \
        -H "Authorization: Bearer $TOKEN" \
        -H 'Content-Type: application/json' \
        -d '{
          "target": "projects/TARGET_PROJECT_NAME"
          }' \
        "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings/SETTING_ID/settingBindings?setting_binding_id=BINDING_ID"
      

    Ganti kode berikut:

    • TARGET_PROJECT_NAME: Masukkan project target tempat setelan akan diterapkan.
    • SETTING_ID: Gunakan SETTING_ID yang sama saat Anda membuat setelan, tetapi tambahkan dengan b1. Misalnya, gunakan gcalmb1 untuk Gemini Code Assist log metadata.

    Jika berhasil, perintah akan menampilkan metadata operasi dalam format berikut:

    {
      "name": "projects/<var>CONTAINER_PROJECT_NAME</var>/locations/global/operations/operation-1737646069712-62c6140bb04bb-49261230-43701daf",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.cloudaicompanion.v1.OperationMetadata",
        "createTime": "2025-01-23T15:27:50.076075570Z",
        "target": "projects/<var>TARGET_PROJECT_NAME</var>/locations/global/loggingSettings/<var>SETTING_ID</var>/settingBindings/<var>BINDING_ID</var>",
        "verb": "create",
        "requestedCancellation": false,
        "apiVersion": "v1"
      },
      "done": false
    }
    
  5. Mengaktifkan log pengguna Gemini Code Assist.

    1. Jalankan perintah berikut untuk membuat setelan:

      curl -X POST \
        -H "Authorization: Bearer $TOKEN" \
        -H 'Content-Type: application/json' \
        -d '{
          "log_prompts_and_responses": true,
          } ' \
        "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings?logging_setting_id=SETTING_ID"
      

      Ganti kode berikut:

      • CONTAINER_PROJECT_NAME: Masukkan project ID induk.
      • SETTING_ID: Masukkan nama setelan unik, seperti gcapar1 untuk Gemini Code Assist prompts and responses.

      Jika berhasil, perintah akan menampilkan isi respons yang menunjukkan log_prompts_and_responses yang ditetapkan ke true:

      {
        "name": "projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings/SETTING_ID",
        "createTime": "2025-01-23T15:22:49.717166932Z",
        "updateTime": "2025-01-23T15:22:49.717166932Z",
        "log_prompts_and_responses": true
      }
      
    2. Jalankan perintah berikut untuk membuat binding setelan log pengguna Gemini Code Assist:

      curl \
        -H "Authorization: Bearer $TOKEN" \
        -H 'Content-Type: application/json' \
        -d '{
          "target": "projects/TARGET_PROJECT_NAME"
          }' \
        "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings/SETTING_ID/settingBindings?setting_binding_id=BINDING_ID"
      

    Ganti kode berikut:

    • TARGET_PROJECT_NAME: Masukkan project target tempat setelan akan diterapkan.
    • SETTING_ID: Gunakan SETTING_ID yang sama saat Anda membuat setelan, tetapi tambahkan dengan b1. Misalnya, gunakan gcaparb1 untuk Gemini Code Assist prompts and responses.

    Jika berhasil, perintah akan menampilkan metadata operasi dalam format berikut:

    {
      "name": "projects/<var>CONTAINER_PROJECT_NAME</var>/locations/global/operations/operation-1737646069712-62c6140bb04bb-49261230-43701daf",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.cloudaicompanion.v1.OperationMetadata",
        "createTime": "2025-01-23T15:27:50.076075570Z",
        "target": "projects/<var>TARGET_PROJECT_NAME</var>/locations/global/loggingSettings/<var>SETTING_ID</var>/settingBindings/<var>BINDING_ID</var>",
        "verb": "create",
        "requestedCancellation": false,
        "apiVersion": "v1"
      },
      "done": false
    }
    

Menonaktifkan logging untuk Gemini Code Assist

Pilih salah satu opsi berikut:

Konsol

  1. Pastikan Anda memiliki izin Identity and Access Management (IAM) berikut di project yang memiliki langganan:

    • loggingSettings.delete
    • loggingSettings.list
    • loggingSettings.update
    • loggingSettings.get
    • cloudaicompanion.instances.loggingSettings.use
    • cloudaicompanion.instances.queryEffectiveSetting
    • settingBindings.loggingSettingsList
    • settingBindings.loggingSettingsGet
    • settingBindings.loggingSettingsUpdate
    • settingBindings.loggingSettingsDelete
    • cloudaicompanion.settingBindings.loggingSettingsUse
    • cloudaicompanion.instances.queryEffectiveSettingBindings
  2. Di konsol Google Cloud , buka halaman Admin untuk Gemini.

    Buka Gemini untuk Google Cloud

    Halaman Gemini untuk Google Cloud akan dimuat.

  3. Klik Setelan di menu navigasi sebelah kiri.

    Halaman Setelan akan dimuat.

  4. Klik Logging for Code Assist metadata untuk menonaktifkan perekaman metadata dari penggunaan Gemini Code Assist dalam project.

  5. Klik Simpan Perubahan.

API

Untuk mengaktifkan logging untuk Gemini Code Assist, gunakan metode loggingSetting.

  1. Pastikan Anda memiliki izin Identity and Access Management (IAM) berikut di project yang memiliki langganan:

    • loggingSettings.create
    • loggingSettings.list
    • loggingSettings.update
    • loggingSettings.get
    • cloudaicompanion.instances.loggingSettings.use
    • cloudaicompanion.instances.queryEffectiveSetting
    • settingBindings.loggingSettingsList
    • settingBindings.loggingSettingsGet
    • settingBindings.loggingSettingsUpdate
    • settingBindings.loggingSettingsCreate
    • serviceusage.services.enable
  2. Buat setelan dan nilai khusus setelan:

    1. Dapatkan token:

      TOKEN=$(gcloud auth print-access-token)
      
  3. Jalankan perintah berikut untuk menonaktifkan setelan log metadata Gemini Code Assist:

      curl -X POST \
        -H "Authorization: Bearer $TOKEN" \
        -H 'Content-Type: application/json' \
        -d '{
          "log_metadata": false,
          } ' \
        "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings?logging_metadata_id=SETTING_ID"
    

    Ganti kode berikut:

    • CONTAINER_PROJECT_NAME: Masukkan project ID induk.
    • SETTING_ID: Masukkan nama setelan yang ada, seperti gcalm1 untuk Gemini Code Assist log metadata.

      Jika berhasil, perintah akan menampilkan isi respons yang menunjukkan log_metadata yang ditetapkan ke false:

      {
        "name": "projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings/SETTING_ID",
        "createTime": "2025-01-23T15:22:49.717166932Z",
        "updateTime": "2025-01-23T15:22:49.717166932Z",
        "log_metadata": false
      }
      
  4. Jalankan perintah berikut untuk menonaktifkan setelan log pengguna Gemini Code Assist:

      curl -X POST \
        -H "Authorization: Bearer $TOKEN" \
        -H 'Content-Type: application/json' \
        -d '{
          "log_prompts_and_responses": false,
          } ' \
        "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings?logging_setting_id=SETTING_ID"
    

    Ganti kode berikut:

    • CONTAINER_PROJECT_NAME: Masukkan project ID induk.
    • SETTING_ID: Masukkan nama setelan yang ada, seperti gcapar1 untuk Gemini Code Assist prompts and responses.

      Jika berhasil, perintah akan menampilkan isi respons yang menunjukkan log_prompts_and_responses yang ditetapkan ke false:

      {
        "name": "projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings/SETTING_ID",
        "createTime": "2025-01-23T15:22:49.717166932Z",
        "updateTime": "2025-01-23T15:22:49.717166932Z",
        "log_prompts_and_responses": false
      }
      

Langkah berikutnya