Pengambilan performa memungkinkan Anda mendiagnosis masalah sementara pada database dengan mengambil metrik mendetail untuk instance Anda saat performa menurun. Untuk menggunakan pengambilan performa, aktifkan pengambilan performa untuk instance Anda dan konfigurasi nilai minimum yang memicu snapshot berbasis metrik mendetail dari instance Cloud SQL Anda.
Sebelum memulai
Untuk menggunakan perekaman performa, Anda harus mengaktifkan insight kueri untuk instance Anda.
Peran yang diperlukan
Untuk mendapatkan izin yang Anda perlukan guna membuat instance dan mengaktifkan perekaman performa, minta administrator untuk memberi Anda peran IAM berikut pada project:
-
Cloud SQL Admin (
roles/cloudsql.admin) -
Compute Viewer (
roles/compute.viewer)
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Mengaktifkan dan mengonfigurasi perekaman performa
Anda dapat mengaktifkan pengambilan performa saat membuat atau mengupdate instance Cloud SQL.
gcloud
Membuat dan mengonfigurasi instance
Untuk mengaktifkan pengambilan performa saat Anda membuat instance Cloud SQL, jalankan perintah berikut:
gcloud beta sql instances create INSTANCE_NAME \ --database-version=DATABASE_VERSION \ --region=REGION \ --tier=TIER \ --edition=EDITION_TYPE \ --performance-capture-config="enabled=true,PROBE_CONFIGURATION,PERFORMANCE_CAPTURE_THRESHOLDS"
Ganti kode berikut:
- INSTANCE_NAME: nama instance Anda
- DATABASE_VERSION: versi database.
Misalnya
MYSQL_8_4atauMYSQL_8_0_37. Jika Anda tidak menentukan versi database, maka versi database defaultnya adalahMYSQL_8_0. - REGION: Region
- TIER: jenis mesin Anda
- EDITION_TYPE: edisi Cloud SQL Anda
Untuk flag performance-capture-config, sertakan enabled=true. Dalam definisi tanda yang sama,
Anda dapat menentukan konfigurasi opsional
untuk PROBE_CONFIGURATION dan
untuk PERFORMANCE_CAPTURE_THRESHOLDS,
atau Anda dapat menentukannya nanti dengan memperbarui instance.
Contoh:
gcloud beta sql instances create my-instance \ --database-version=MYSQL_8_0 \ --edition=ENTERPRISE_PLUS \ --tier=db-perf-optimized-N-4 \ --region=us-west1 \ --performance-capture-config="enabled=true,probing-interval-seconds=30,probe-threshold=5,running-threads-threshold=10,transaction-duration-threshold=300"
Memperbarui instance yang ada
Untuk mengaktifkan pengambilan performa untuk instance Cloud SQL yang ada, jalankan perintah berikut:
gcloud beta sql instances patch INSTANCE_NAME \ --performance-capture-config="enabled=true,PROBE_CONFIGURATION,PERFORMANCE_CAPTURE_THRESHOLDS"
Untuk flag performance-capture-config, sertakan enabled=true.
Untuk flag yang sama, Anda dapat menentukan konfigurasi opsional
untuk PROBE_CONFIGURATION dan
untuk PERFORMANCE_CAPTURE_THRESHOLDS.
Anda juga dapat menggunakan perintah gcloud beta sql instances patch
untuk memperbarui nilai konfigurasi batas untuk pengambilan performa pada instance yang ada.
Mengonfigurasi interval pemeriksaan dan pemeriksaan berurutan metrik performa
Anda dapat mengganti PROBE_CONFIGURATION dengan satu atau kedua setelan flag berikut. Jika Anda tidak menetapkan flag, agen pemantauan akan menggunakan nilai default.
probing-interval-seconds=SECONDS: bilangan bulat antara20dan86400. Interval waktu, dalam detik, antar-pemeriksaan metrik. Misalnya,30,60,100. Default-nya adalah30.probe-threshold=PROBES: jumlah waktu berturut-turut batas harus terlampaui untuk memicu perekaman performa. Rentang yang valid adalah1hingga20. Default-nya adalah3.
Mengonfigurasi nilai minimum pengambilan performa
Anda dapat mengganti PERFORMANCE_CAPTURE_THRESHOLDS dengan satu atau beberapa setelan tanda berikut. Jika Anda tidak menetapkan nilai untuk flag, agen pemantauan akan menggunakan nilai default untuk nilai minimum dan maksimum.
running-threads-threshold=THREADS: untuk instance utama, jumlah minimum thread aktif yang dianggap melebihi nilai minimum. Contoh,10. Harus lebih besar dari atau sama dengan10. Jika tidak disetel, nilai default akan didasarkan pada ukuran instance. Default-nya adalahMIN(600, cpuCount * 20).seconds-behind-source-threshold=SECONDS: untuk replika baca, keterlambatan replikasi minimum, dalam detik, yang dianggap melebihi nilai minimum. Harus lebih besar dari0. Jumlah defaultnya adalah900transaction-duration-threshold=SECONDS: durasi, dalam detik, transaksi yang belum di-commit sebelum transaksi dilacak dan disertakan dalam log perekaman performa. Misalnya,300,600. Nilai minimum adalah60. Default-nya adalah3600.
REST v1
Membuat dan mengonfigurasi instance
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: project ID Anda.
- INSTANCE_ID: ID instance Anda
- DATABASE_VERSION: versi database.
Misalnya
MYSQL_8_4atauMYSQL_8_0_37. Jika Anda tidak menentukan versi database, maka versi database defaultnya adalahMYSQL_8_0. - REGION: Region
- MACHINE_TYPE: jenis mesin Anda
- EDITION_TYPE: edisi Cloud SQL Anda
- PROBING_INTERVAL_SECONDS: bilangan bulat antara
20dan86400. Interval waktu, dalam detik, antara pemeriksaan metrik. Default-nya adalah30. - PROBE_THRESHOLD: jumlah waktu berturut-turut yang harus dilampaui oleh nilai minimum untuk
memicu perekaman performa. Rentang yang valid adalah
1hingga20. Default-nya adalah3. - RUNNING_THREADS_THRESHOLD: untuk instance utama, jumlah minimum
thread aktif yang dianggap melebihi nilai minimum. Contoh,
10. Harus lebih besar dari atau sama dengan10. Jika tidak disetel, nilai default akan didasarkan pada ukuran instance. Default-nya adalahMIN(600, cpuCount * 20). - SECONDS_BEHIND_SOURCE_THRESHOLD: untuk replika baca, keterlambatan replikasi minimum, dalam
detik, yang dianggap melebihi nilai minimum. Harus lebih besar dari
0. Jumlah defaultnya adalah900 - TRANSACTION_DURATION_THRESHOLD: durasi, dalam detik, transaksi yang belum di-commit
sebelum transaksi dilacak dan disertakan dalam log perekaman performa.
Misalnya,
300,600. Nilai minimum adalah60. Default-nya adalah3600.
Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances
Meminta isi JSON:
{
"name": "INSTANCE_ID",
"region": "REGION",
"databaseVersion": "DATABASE_VERSION",
"settings": {
"tier": "MACHINE_TYPE",
"edition": "EDITION_TYPE"
},
"performanceCaptureConfig": {
"enabled": true,
"probingIntervalSeconds": PROBING_INTERVAL_SECONDS,
"probeThreshold": PROBE_THRESHOLD,
"runningThreadsThreshold": RUNNING_THREADS_THRESHOLD,
"secondsBehindSourceThreshold": SECONDS_BEHIND_SOURCE_THRESHOLD,
"transactionDurationThreshold": TRANSACTION_DURATION_THRESHOLD
}
}
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan melihat respons JSON seperti berikut:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2025-11-10T22:19:33.735Z",
"operationType": "CREATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
Memperbarui instance yang ada
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PERFORMANCE_CAPTURE_ENABLE: tetapkan ke
trueuntuk mengaktifkan perekaman performa untuk instance Anda. - PROBING_INTERVAL_SECONDS: bilangan bulat antara
20dan86400. Interval waktu, dalam detik, antara pemeriksaan metrik. Default-nya adalah30. - PROBE_THRESHOLD: jumlah waktu berturut-turut yang harus dilampaui oleh nilai minimum untuk
memicu perekaman performa. Rentang yang valid adalah
1hingga20. Default-nya adalah3. - RUNNING_THREADS_THRESHOLD: untuk instance utama, jumlah minimum
thread aktif yang dianggap melebihi nilai minimum. Contoh,
10. Harus lebih besar dari atau sama dengan10. Jika tidak disetel, nilai default akan didasarkan pada ukuran instance. Default-nya adalahMIN(600, cpuCount * 20). - SECONDS_BEHIND_SOURCE_THRESHOLD: untuk replika baca, keterlambatan replikasi minimum, dalam
detik, yang dianggap melebihi nilai minimum. Harus lebih besar dari
0. Jumlah defaultnya adalah900 - TRANSACTION_DURATION_THRESHOLD: durasi, dalam detik, transaksi yang belum di-commit
sebelum transaksi dilacak dan disertakan dalam log perekaman performa.
Misalnya,
300,600. Nilai minimum adalah60. Default-nya adalah3600.
Metode HTTP dan URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID
Meminta isi JSON:
{
"performanceCaptureConfig": {
"enabled": PERFORMANCE_CAPTURE_ENABLE,
"probingIntervalSeconds": PROBING_INTERVAL_SECONDS,
"probeThreshold": PROBE_THRESHOLD,
"runningThreadsThreshold": RUNNING_THREADS_THRESHOLD,
"secondsBehindSourceThreshold": SECONDS_BEHIND_SOURCE_THRESHOLD,
"transactionDurationThreshold": TRANSACTION_DURATION_THRESHOLD
},
}
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan melihat respons JSON seperti berikut:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2025-11-10T22:19:33.735Z",
"operationType": "UPDATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
REST v1beta4
Membuat dan mengonfigurasi instance
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: project ID Anda.
- INSTANCE_ID: ID instance Anda
- DATABASE_VERSION: versi database.
Misalnya
MYSQL_8_4atauMYSQL_8_0_37. Jika Anda tidak menentukan versi database, maka versi database defaultnya adalahMYSQL_8_0. - REGION: Region
- MACHINE_TYPE: jenis mesin Anda
- EDITION_TYPE: edisi Cloud SQL Anda
- PROBING_INTERVAL_SECONDS: bilangan bulat antara
20dan86400. Interval waktu, dalam detik, antara pemeriksaan metrik. Default-nya adalah30. - PROBE_THRESHOLD: jumlah waktu berturut-turut yang harus dilampaui oleh nilai minimum untuk
memicu perekaman performa. Rentang yang valid adalah
1hingga20. Default-nya adalah3. - RUNNING_THREADS_THRESHOLD: untuk instance utama, jumlah minimum
thread aktif yang dianggap melebihi nilai minimum. Contoh,
10. Harus lebih besar dari atau sama dengan10. Jika tidak disetel, nilai default akan didasarkan pada ukuran instance. Default-nya adalahMIN(600, cpuCount * 20). - SECONDS_BEHIND_SOURCE_THRESHOLD: untuk replika baca, keterlambatan replikasi minimum, dalam
detik, yang dianggap melebihi nilai minimum. Harus lebih besar dari
0. Default-nya adalah900. - TRANSACTION_DURATION_THRESHOLD: durasi, dalam detik, transaksi yang belum di-commit
sebelum transaksi dilacak dan disertakan dalam log perekaman performa.
Misalnya,
300,600. Nilai minimum adalah60. Default-nya adalah3600.
Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances
Meminta isi JSON:
{
"name": "INSTANCE_ID",
"region": "REGION",
"databaseVersion": "DATABASE_VERSION",
"settings": {
"tier": "MACHINE_TYPE",
"edition": "EDITION_TYPE",
},
"performanceCaptureConfig": {
"enabled": true,
"probingIntervalSeconds": PROBING_INTERVAL_SECONDS,
"probeThreshold": PROBE_THRESHOLD,
"runningThreadsThreshold": RUNNING_THREADS_THRESHOLD,
"secondsBehindSourceThreshold": SECONDS_BEHIND_SOURCE_THRESHOLD,
"transactionDurationThreshold": TRANSACTION_DURATION_THRESHOLD
},
}
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan melihat respons JSON seperti berikut:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2025-11-10T22:19:33.735Z",
"operationType": "CREATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
Memperbarui instance yang ada
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PERFORMANCE_CAPTURE_ENABLE: tetapkan ke
trueuntuk mengaktifkan perekaman performa untuk instance Anda. - PROBING_INTERVAL_SECONDS: bilangan bulat antara
20dan86400. Interval waktu, dalam detik, antara pemeriksaan metrik. Default-nya adalah30. - PROBE_THRESHOLD: jumlah waktu berturut-turut yang harus dilampaui oleh nilai minimum untuk
memicu perekaman performa. Rentang yang valid adalah
1hingga20. Default-nya adalah3. - RUNNING_THREADS_THRESHOLD: untuk instance utama, jumlah minimum
thread aktif yang dianggap melebihi nilai minimum. Misalnya,
10. Harus lebih besar dari atau sama dengan10. Jika tidak disetel, nilai default akan didasarkan pada ukuran instance. Default-nya adalahMIN(600, cpuCount * 20). - SECONDS_BEHIND_SOURCE_THRESHOLD: untuk replika baca, keterlambatan replikasi minimum, dalam
detik, yang dianggap melebihi nilai minimum. Harus lebih besar dari
0. Jumlah defaultnya adalah900 - TRANSACTION_DURATION_THRESHOLD: durasi, dalam detik, transaksi yang belum di-commit
sebelum transaksi dilacak dan disertakan dalam log perekaman performa.
Misalnya,
300,600. Nilai minimum adalah60. Default-nya adalah3600.
Metode HTTP dan URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
Meminta isi JSON:
{
"performanceCaptureConfig": {
"enabled": PERFORMANCE_CAPTURE_ENABLE,
"probingIntervalSeconds": PROBING_INTERVAL_SECONDS,
"probeThreshold": PROBE_THRESHOLD,
"runningThreadsThreshold": RUNNING_THREADS_THRESHOLD,
"secondsBehindSourceThreshold": SECONDS_BEHIND_SOURCE_THRESHOLD,
"transactionDurationThreshold": TRANSACTION_DURATION_THRESHOLD
},
}
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan melihat respons JSON seperti berikut:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2025-11-10T22:19:33.735Z",
"operationType": "UPDATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
Menonaktifkan perekaman performa
Untuk menonaktifkan perekaman performa, gunakan perintah berikut.
gcloud
gcloud beta sql instances patch INSTANCE_NAME \ --performance-capture-config="enabled=false"
Ganti INSTANCE_NAME dengan nama instance tempat Anda ingin menonaktifkan pengambilan performa.
REST v1
Metode HTTP dan URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID
Meminta isi JSON:
{
"performanceCaptureConfig": {
"enabled": false
}
}
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan melihat respons JSON seperti berikut:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "INSERT_TIME",
"operationType": "UPDATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
REST v1beta4
Metode HTTP dan URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
Meminta isi JSON:
{
"performanceCaptureConfig": {
"enabled": false
}
}
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2025-11-10T22:19:33.735Z",
"operationType": "UPDATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}