Memantau penggunaan Data Boost

Halaman ini menjelaskan cara menggunakan Cloud Monitoring dan log audit Spanner untuk memantau dan menganalisis penggunaan Spanner Data Boost.

Pemantauan memberikan kemampuan untuk melacak total penggunaan dari waktu ke waktu dan menguraikan penggunaan tersebut berdasarkan pengguna. Log audit Spanner memungkinkan analisis penggunaan yang lebih fleksibel, termasuk menyediakan metrik menurut pengguna atau menurut ID pekerjaan BigQuery.

Menggunakan Monitoring untuk melacak penggunaan Data Boost

Ikuti langkah-langkah berikut untuk melacak penggunaan Data Boost secara keseluruhan:

  1. Di konsol Google Cloud , buka Monitoring.
    Buka Monitoring
  2. Jika Metrics Explorer ditampilkan di menu navigasi, pilih opsi tersebut. Jika tidak, klik Resources, lalu pilih Metrics Explorer.
  3. Di bagian atas halaman, pilih interval waktu.
  4. Di menu drop-down Metric, di kolom Filter by resource or metric name, masukkan spanner dan tekan Enter untuk mempersempit penelusuran.
  5. Dalam daftar Metric, pilih Cloud Spanner Instance > Instance > Processing unit second, lalu klik Apply.

    Tindakan ini akan membuat diagram garis penggunaan Data Boost gabungan di semua instance Spanner.

  6. Untuk melihat penggunaan instance tertentu, ikuti langkah-langkah berikut:

    1. Gunakan kolom Filter untuk menambahkan filter, seperti ID instance.
    2. Klik + untuk menambahkan atribut lain.
  7. Untuk melihat perincian penggunaan menurut semua instance, ikuti langkah-langkah berikut:

    1. Hapus filter dengan mengklik ikon X di samping kolom filter.
    2. Di menu drop-down operator Aggregation, pilih Sum, lalu pilih berdasarkan instance_id.
  8. Untuk mengelompokkan penggunaan berdasarkan akun utama, di drop-down operator Aggregation, pilih Sum, lalu pilih berdasarkan credential_id.

Menggunakan log audit untuk menganalisis penggunaan Data Boost

Log audit Spanner memungkinkan analisis penggunaan Data Boost yang lebih fleksibel. Selain kemampuan untuk menguraikan penggunaan dari waktu ke waktu berdasarkan instance atau akun utama seperti pada Pemantauan, log audit Spanner, jika diaktifkan dan tersedia, memungkinkan penguraian penggunaan dari waktu ke waktu berdasarkan database atau ID pekerjaan BigQuery.

Mengaktifkan log audit dapat dikenai biaya tambahan. Untuk mengetahui informasi tentang harga Cloud Logging, lihat Harga Google Cloud Observability: Logging.

Mengaktifkan log audit penggunaan Data Boost

Anda harus mengaktifkan log audit akses data untuk Spanner sebelum dapat mengumpulkan data penggunaan untuk Data Boost. Untuk melakukannya, ikuti langkah-langkah berikut:

  1. Ikuti petunjuk di bagian Mengonfigurasi log audit Akses Data dengan konsol Google Cloud .
  2. Aktifkan jenis log Data Read untuk layanan Spanner API.
  3. Untuk mendapatkan penggunaan Data Boost berdasarkan teks SQL tugas BigQuery, pastikan log audit untuk BigQuery juga diaktifkan.

Melihat penggunaan menurut akun utama

Untuk mengkueri log audit guna melihat penggunaan Data Boost oleh pengguna, ikuti langkah-langkah berikut:

  1. Buka Logs Explorer di konsol Google Cloud .

    Buka Logs Explorer

  2. Di menu navigasi, klik Log Analytics.

  3. Untuk menampilkan penggunaan menurut pengguna dan database selama 7 hari terakhir, jalankan kueri berikut. Untuk mengubah rentang waktu penggunaan yang ditampilkan, ubah ekspresi timestamp dalam klausa WHERE.

    SELECT
      SUM(CAST(JSON_VALUE(labels.data_boost_usage) AS INT64)) AS usage,
      REGEXP_EXTRACT(
        proto_payload.audit_log.resource_name,
        'projects/[^/]+/instances/[^/]+/databases/[^/]+') AS database,
      proto_payload.audit_log.authentication_info.principal_email AS principal_email
    FROM `PROJECT_NAME.global._Default._AllLogs`
    WHERE
      timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 7 DAY)
      AND resource.type = 'spanner_instance' AND operation.last IS NULL
      AND JSON_VALUE(labels.data_boost_usage) != ''
    GROUP BY database, principal_email;
    

    Ganti PROJECT_NAME dengan nama project Anda.

Contoh berikut menunjukkan penggunaan dalam unit pemrosesan untuk 4 akun utama.

Penggunaan Data Boost oleh pengguna dari log audit

Melihat penggunaan berdasarkan ID pekerjaan BigQuery

Untuk membuat kueri log audit guna melihat penggunaan Data Boost yang dikelompokkan berdasarkan database, pengguna, dan ID pekerjaan BigQuery, ikuti langkah-langkah berikut:

  1. Buka Logs Explorer di konsol Google Cloud .

    Buka Logs Explorer

  2. Di menu navigasi, klik Log Analytics.

  3. Jalankan kueri berikut:

    SELECT
      SUM(CAST(JSON_VALUE(labels.data_boost_usage) AS INT64)) AS usage,
      REGEXP_EXTRACT(
        proto_payload.audit_log.resource_name,
        'projects/[^/]+/instances/[^/]+/databases/[^/]+') AS database,
      proto_payload.audit_log.authentication_info.principal_email AS principal_email,
      IFNULL(JSON_VALUE(labels.data_boost_workload_id), 'not from BigQuery') AS job_id
    FROM `PROJECT_NAME.global._Default._AllLogs`
    WHERE
      timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 7 DAY)
      AND resource.type = 'spanner_instance' AND operation.last IS NULL
      AND JSON_VALUE(labels.data_boost_usage) != ''
    GROUP BY database, principal_email, job_id;
    

    Ganti PROJECT_NAME dengan nama project Anda.

Contoh berikut menunjukkan penggunaan berdasarkan ID pekerjaan BigQuery.

Penggunaan Data Boost berdasarkan ID pekerjaan

Melihat penggunaan berdasarkan teks SQL BigQuery

Untuk melihat penggunaan Data Boost untuk beberapa tugas BigQuery yang digabungkan berdasarkan teks SQL tugas tersebut, ikuti langkah-langkah berikut:

  1. Buka Logs Explorer di konsol Google Cloud .

    Buka Logs Explorer

  2. Di menu navigasi, klik Log Analytics.

  3. Jalankan kueri berikut:

    SELECT
      SUM(
        CAST(
          JSON_VALUE(db.labels.data_boost_usage)
          AS INT64)) AS usage,
      JSON_VALUE(
        bq.proto_payload.audit_log.metadata.jobInsertion.job.jobConfig.queryConfig.query)
        AS bq_query
    FROM
      `PROJECT_NAME.global._Default._AllLogs` db,
      `PROJECT_NAME.global._Default._AllLogs` bq
    WHERE
      db.timestamp > TIMESTAMP_SUB(
        CURRENT_TIMESTAMP(), INTERVAL 7 DAY)
      AND db.resource.type = 'spanner_instance'
      AND JSON_VALUE(db.labels.data_boost_usage) != ''
      AND db.operation.last IS NULL
      AND bq.timestamp > TIMESTAMP_SUB(
        CURRENT_TIMESTAMP(), INTERVAL 7 DAY)
      AND bq.proto_payload.audit_log.method_name
        = 'google.cloud.bigquery.v2.JobService.InsertJob'
      AND bq.resource.type = 'bigquery_project'
      AND JSON_VALUE(
        bq.proto_payload.audit_log.metadata.jobInsertion.job.jobConfig.queryConfig.query)
        IS NOT NULL
      AND JSON_VALUE(db.labels.data_boost_workload_id)
        = REGEXP_EXTRACT(bq.proto_payload.audit_log.resource_name, '[^/]*$')
    GROUP BY bq_query
    ORDER BY usage DESC
    

    Ganti PROJECT_NAME dengan nama project Anda.

Contoh berikut menunjukkan penggunaan Data Boost berdasarkan teks SQL.

Penggunaan Data Boost berdasarkan teks SQL

Membuat pemberitahuan Data Boost

Untuk membuat pemberitahuan yang dikeluarkan saat penggunaan Data Boost melebihi batas yang telah ditentukan, lihat Menetapkan pemberitahuan untuk penggunaan Data Boost.

Langkah berikutnya