Mengonfigurasi logging audit penggunaan untuk Gemini Enterprise

Panduan ini menjelaskan cara admin dapat mengaktifkan dan memantau penggunaan audit pencatatan log untuk Gemini Enterprise melalui API. Log audit penggunaan memungkinkan organisasi melacak operasi pengguna, metadata, dan konten inti untuk tujuan audit dan kemampuan observasi.

Anda dapat mengelola audit penggunaan untuk Gemini Enterprise menggunakan setelan ObservabilityConfig di aplikasi Gemini Enterprise. Mengaktifkan kemampuan pemantauan akan merekam data permintaan dan respons, termasuk perintah dan metadata perujukan, lalu menyimpannya di Cloud Logging.

Sebelum memulai

Sebelum mengonfigurasi log audit, pastikan Anda memiliki peran IAM berikut:

  • Untuk mengaktifkan logging audit, Anda harus memiliki peran IAM Admin Discovery Engine (roles/discoveryengine.admin).
  • Untuk mengakses Cloud Logging, Anda harus memiliki peran IAM Logs Viewer (roles/logging.viewer).

Mengaktifkan logging audit penggunaan untuk aplikasi

Bagian berikut menjelaskan cara mengaktifkan logging audit penggunaan saat membuat aplikasi baru atau untuk aplikasi yang sudah ada.

Mengaktifkan logging audit penggunaan saat membuat aplikasi

Anda dapat mengaktifkan logging audit penggunaan saat membuat aplikasi baru dengan menyertakan setelan observabilityConfig dalam perintah pembuatan aplikasi. Untuk membuat aplikasi baru dengan logging audit penggunaan diaktifkan, jalankan perintah berikut:

REST

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-H "X-Goog-User-Project: PROJECT_ID" \
"https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines?engineId=APP_ID" \
-d '{
  "name": "projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID",
  "displayName": "APP_DISPLAY_NAME",
  "solutionType": "SOLUTION_TYPE_SEARCH",
  "searchEngineConfig": {
    "searchTier": "SEARCH_TIER_ENTERPRISE",
    "searchAddOns": ["SEARCH_ADD_ON_LLM"],
    "requiredSubscriptionTier": "SUBSCRIPTION_TIER_SEARCH_AND_ASSISTANT"
  },
  "industryVertical": "GENERIC",
  "appType": "APP_TYPE_INTRANET",
  "observabilityConfig": {
    "observabilityEnabled": true,
    "sensitiveLoggingEnabled": true
  }
}'

Ganti kode berikut:

  • ENDPOINT_LOCATION: multi-region untuk permintaan API Anda. Tentukan salah satu nilai berikut:
    • us untuk multi-region AS
    • eu untuk multi-region Uni Eropa
    • global untuk lokasi Global
    Untuk mengetahui informasi selengkapnya, lihat Menentukan multi-region untuk penyimpanan data Anda.
  • PROJECT_ID: ID project Anda.
  • LOCATION: multi-region penyimpanan data Anda: global, us, atau eu
  • APP_ID: ID aplikasi yang ingin Anda buat.
  • APP_DISPLAY_NAME: nama tampilan aplikasi yang ingin Anda buat.

Mengaktifkan logging audit penggunaan untuk aplikasi yang sudah ada

Untuk mengaktifkan logging audit penggunaan di aplikasi yang ada, jalankan perintah berikut:

REST

curl -X PATCH -H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-H "X-Goog-User-Project: PROJECT_ID" \
"https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID?updateMask=observabilityConfig" \
-d '{
  "observabilityConfig": {
    "observabilityEnabled": true,
    "sensitiveLoggingEnabled": true
  }
}'

Ganti kode berikut:

  • ENDPOINT_LOCATION: multi-region untuk permintaan API Anda. Tentukan salah satu nilai berikut:
    • us untuk multi-region AS
    • eu untuk multi-region Uni Eropa
    • global untuk lokasi Global
    Untuk mengetahui informasi selengkapnya, lihat Menentukan multi-region untuk penyimpanan data Anda.
  • PROJECT_ID: ID project Anda.
  • LOCATION: multi-region penyimpanan data Anda: global, us, atau eu
  • APP_ID: ID aplikasi.

Informasi yang dicatat

Tabel berikut meringkas data penggunaan yang dicatat oleh Gemini Enterprise:

Jalur layanan Data yang dicatat
SearchService.Search

Mencatat data di sumber yang digunakan untuk perujukan atau sebagai input LLM.

Permintaan:
  • query
  • user_info

Respons:
  • attribution_token
  • results.id
AssistantService.Assist

Mencatat permintaan dan respons dari asisten Gemini Enterprise.

Permintaan:
  • name
  • query.text
  • query.parts

Respons:
  • assist_token
  • answer.name
  • answer.state
  • answer.replies.grounded_content.text
  • answer.replies.grounded_content.text_grounding_metadata.segments
  • answer.replies.grounded_content.text_grounding_metadata.references
  • answer.skipped_reasons
AssistantService.StreamAssist Permintaan:
  • name
  • query.text
  • query.parts
  • agents_spec

Respons:
  • assist_token
  • answer.name
  • answer.state
  • answer.replies.grounded_content.text
  • answer.replies.grounded_content.text_grounding_metadata.segments
  • answer.replies.grounded_content.text_grounding_metadata.references
  • answer.skipped_reasons
ConversationSearchService.AnswerQuery Permintaan:
  • serving_config
  • query.query_id
  • query.text
  • session
  • user_pseudo_id
  • end_user_spec
  • answer_generation_spec.model_spec.model_version
  • answer_generation_spec.prompt_spec.preamble
  • answer_generation_spec.include_citations
  • answer_generation_spec.answer_language_code
  • answer_generation_spec.ignore_adversarial_query
  • answer_generation_spec.ignore_non_answer_seeking_query
  • answer_generation_spec.ignore_jail_breaking_query

Respons:
  • answer
  • answer_query_token
EngineService.CreateEngine Permintaan:
  • engine_id
  • engine.name
  • engine.create_time
  • engine.display_name
  • engine.update_time
  • engine.data_store_ids
  • engine.data_stores

Respons:
  • engine_id
  • engine.name
  • engine.create_time
  • engine.display_name
  • engine.update_time
  • engine.data_store_ids
  • engine.data_stores
EngineService.UpdateEngine Permintaan:
  • engine.name
  • engine.create_time
  • engine.display_name
  • engine.update_time
  • engine.data_store_ids
  • engine.data_stores
  • update_mask

Respons:
  • engine.name
  • engine.create_time
  • engine.display_name
  • engine.update_time
  • engine.data_store_ids
  • engine.data_stores
AgentService.SetIamPolicy Permintaan:
  • policy.bindings.roles
  • policy.bindings.members

Respons:
  • policy.bindings.roles
  • policy.bindings.members
AgentService.CreateAgent Permintaan:
  • parent
  • agent_id
  • agent.name
  • agent.display_name
  • agent.create_time
  • agent.update_time
  • agent.definition_case

Respons:
  • agent.name
  • agent.display_name
  • agent.create_time
  • agent.update_time
  • agent.definition_case
AgentService.UpdateAgent Permintaan:
  • agent.name
  • agent.display_name
  • agent.create_time
  • agent.update_time
  • agent.definition_case
  • update_mask

Respons:
  • agent.name
  • agent.display_name
  • agent.create_time
  • agent.update_time
  • agent.definition_case

Mengakses log penggunaan

Untuk mengakses dan melihat log audit penggunaan, ikuti langkah-langkah berikut:

  1. Di konsol Google Cloud , buka halaman Logs Explorer.

    Buka Logs Explorer'

  2. Pilih Google Cloud project yang mengaktifkan pencatatan audit.

  3. Untuk menampilkan hanya log Gemini Enterprise, masukkan kueri berikut di kolom editor kueri, lalu klik Jalankan Kueri:

      logName="projects/PROJECT_ID/logs/discoveryengine.googleapis.com%2Fgemini_enterprise_user_activity
    

    Ganti kode berikut:

    • PROJECT_ID: ID project Anda.

Menonaktifkan log audit penggunaan untuk aplikasi

Untuk menonaktifkan logging audit penggunaan, jalankan perintah berikut:

REST

curl -X PATCH -H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-H "X-Goog-User-Project: PROJECT_ID" \
"https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID?updateMask=observabilityConfig" \
-d '{
  "observabilityConfig": {
    "observabilityEnabled": false,
    "sensitiveLoggingEnabled": false
  }
}'

Ganti kode berikut:

  • ENDPOINT_LOCATION: multi-region untuk permintaan API Anda. Tentukan salah satu nilai berikut:
    • us untuk multi-region AS
    • eu untuk multi-region Uni Eropa
    • global untuk lokasi Global
    Untuk mengetahui informasi selengkapnya, lihat Menentukan multi-region untuk penyimpanan data Anda.
  • PROJECT_ID: ID project Anda.
  • LOCATION: multi-region penyimpanan data Anda: global, us, atau eu
  • APP_ID: ID aplikasi.