Memantau penggunaan Data Boost

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

Cloud Monitoring menyediakan kemampuan untuk melacak total penggunaan dari waktu ke waktu dan mengurai penggunaan tersebut berdasarkan pengguna. Log audit Spanner memungkinkan analisis penggunaan yang lebih fleksibel, termasuk menyediakan metrik berdasarkan pengguna atau berdasarkan ID tugas BigQuery.

Menggunakan Cloud Monitoring untuk melacak penggunaan Data Boost

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

  1. Di konsol Google Cloud, buka Dasbor Monitoring
    Buka Monitoring
  2. Pilih Metrics Explorer di menu navigasi. Jika tidak, klik Resources, lalu pilih Metrics Explorer.
  3. Di bagian atas halaman, pilih interval waktu.
  4. Di daftar dropdown Metric, di kolom Filter menurut resource atau nama metrik, 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 seluruh instance Spanner.

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

    1. Klik + ADD FILTER untuk membuat filter.
    2. Di daftar dropdown Label 1, pilih instance_id.
    3. Di kolom teks Value 1, masukkan atau pilih ID instance yang akan ditampilkan penggunaannya.
  7. Untuk melihat perincian penggunaan oleh semua instance, ikuti langkah-langkah berikut:

    1. Hapus filter apa pun dengan mengklik ikon tempat sampah di samping kolom Filters.
    2. Di bagian Group by, pada daftar dropdown Labels, pilih instance_id, lalu pilih Sum dalam daftar Grouping function.
  8. Untuk mengelompokkan penggunaan berdasarkan akun utama, di bagian Group by, pilih credential_id dalam daftar Labels dan Sum dalam daftar Grouping function.

Contoh berikut menunjukkan detik unit pemrosesan berdasarkan akun utama.

Detik PU oleh pengguna

Menggunakan log audit untuk menganalisis penggunaan Data Boost

Log audit Spanner memungkinkan analisis penggunaan Data Boost yang lebih fleksibel. Selain kemampuan untuk memerinci penggunaan dari waktu ke waktu berdasarkan instance atau akun utama seperti pada Cloud Monitoring, log audit Spanner, jika diaktifkan dan tersedia, memungkinkan pengelompokan penggunaan dari waktu ke waktu berdasarkan database atau ID tugas BigQuery.

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

Aktifkan 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 Mengonfigurasi log audit Akses Data dengan Konsol Google Cloud.
  2. Mengaktifkan jenis log Pembacaan Data untuk layanan Spanner API.
  3. Untuk memperoleh penggunaan Data Boost dengan teks SQL tugas BigQuery, pastikan log audit untuk BigQuery juga diaktifkan.

Lihat penggunaan berdasarkan akun utama

Untuk membuat kueri log audit guna melihat penggunaan Data Boost oleh pengguna, ikuti langkah-langkah ini:

  1. Buka Logs Explorer di Konsol Google Cloud.

    Buka Logs Explorer

  2. Di menu navigasi, klik Log Analytics.

  3. Untuk menampilkan penggunaan oleh pengguna dan database selama 7 hari terakhir, jalankan kueri berikut. Untuk mengubah rentang waktu saat penggunaan 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

Lihat penggunaan berdasarkan ID tugas BigQuery

Untuk membuat kueri log audit guna melihat penggunaan Data Boost yang dikelompokkan berdasarkan database, pengguna, dan ID tugas 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 BQ') 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 menurut ID tugas BigQuery.

Penggunaan Data Boost menurut ID tugas

Lihat penggunaan oleh teks SQL BigQuery

Guna 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 oleh teks SQL.

Penggunaan Data Boost oleh 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 selanjutnya