Memantau Azure SQL Database dengan metrik dan pemberitahuan

Berlaku untuk:Azure SQL Database

Anda dapat menggunakan metrik Azure Monitor untuk memantau database dan konsumsi dan kesehatan sumber daya kumpulan elastis. Anda dapat menggunakan pemberitahuan untuk mengirim pemberitahuan saat nilai metrik menunjukkan potensi masalah.

Metrik

Metrik adalah serangkaian nilai numerik yang diukur pada interval waktu reguler, sering menggunakan unit seperti count, , bytespercent, dll. Tergantung pada sifat metrik, Anda dapat menggunakan agregasi seperti total, , count, averageminimum, maximum untuk menghitung nilai metrik selama durasi waktu. Anda dapat membagi beberapa metrik berdasarkan dimensi. Setiap dimensi menyediakan konteks tambahan untuk nilai numerik.

Contoh metrik Azure SQL Database yang tersedia adalah: CPU percentage, , Data space used, DeadlocksTempdb Percent Log Used.

Lihat metrik database dan metrik kumpulan elastis untuk semua metrik yang tersedia di Azure SQL Database.

Catatan

Beberapa metrik hanya berlaku untuk jenis database atau kumpulan elastis tertentu. Deskripsi setiap metrik menyebutkan jika penggunaannya terbatas pada database tertentu atau jenis kumpulan elastis, seperti vCore, Hyperscale, tanpa server, dll.

Di portal Azure SQL Database, beberapa metrik yang umum digunakan di bagan pada tab Pemantauan pada halaman Gambaran Umum . Ini memungkinkan Anda menilai konsumsi sumber daya dan kesehatan database atau kumpulan elastis secara sekilas.

Cuplikan layar dari portal Azure bagan metrik yang diperlihatkan di halaman Gambaran Umum Azure SQL Database.

Di bawah Metrik utama, pilih Lihat semua metrik atau di mana saja di dalam bagan untuk membuka penjelajah metrik. Di halaman Metrik , Anda bisa menampilkan semua metrik lain yang tersedia untuk database atau sumber daya kumpulan elastis. Di penjelajah metrik, Anda dapat mengubah rentang waktu, granularitas, dan jenis agregasi untuk bagan, mengubah jenis bagan, memperluas cakupan untuk menyertakan metrik dari sumber daya Azure lainnya, membuat aturan pemberitahuan, dll. Anda juga dapat membuka penjelajah metrik dengan memilih item menu Metrik , di bawah Pemantauan di menu sumber daya.

Menggunakan metrik untuk memantau database dan kumpulan elastis

Anda dapat menggunakan metrik untuk memantau database dan konsumsi dan kesehatan sumber daya kumpulan elastis. Misalnya, Anda dapat:

  • Ukuran database atau kumpulan elastis yang tepat ke beban kerja aplikasi Anda
  • Mendeteksi peningkatan konsumsi sumber daya secara bertahap, dan secara proaktif meningkatkan database atau kumpulan elastis
  • Mendeteksi dan memecahkan masalah performa

Tabel berikut ini menjelaskan metrik yang umum digunakan di Azure SQL Database.

Nama metrik ID metrik Deskripsi
Persentase CPU cpu_percent Metrik ini menunjukkan konsumsi CPU terhadap batas beban kerja pengguna database atau kumpulan elastis, yang dinyatakan sebagai persentase. Untuk informasi selengkapnya, lihat Konsumsi sumber daya menurut beban kerja pengguna dan proses internal.
Persentase CPU instans SQL sql_instance_cpu_percent Metrik ini menunjukkan total konsumsi CPU oleh beban kerja pengguna dan sistem, yang dinyatakan sebagai persentase. Karena metrik ini dan metrik persentase CPU diukur pada skala yang berbeda, metrik tersebut tidak secara langsung sebanding satu sama lain. Untuk informasi selengkapnya, lihat Konsumsi sumber daya menurut beban kerja pengguna dan proses internal.
Persentase IO Data physical_data_read_percent Metrik ini menunjukkan konsumsi IO file data terhadap batas beban kerja pengguna database atau kumpulan elastis, yang dinyatakan sebagai persentase. Untuk informasi selengkapnya, lihat Tata kelola IO data.
Persentase IO Log log_write_percent Metrik ini menunjukkan konsumsi throughput tulis log transaksi terhadap batas beban kerja pengguna database atau kumpulan elastis, yang dinyatakan sebagai persentase. Untuk informasi selengkapnya, lihat Tata kelola laju log transaksi.
Persentase pekerja workers_percent Metrik ini menunjukkan konsumsi utas pekerja terhadap batas beban kerja pengguna database atau kumpulan elastis, yang dinyatakan sebagai persentase.
Persentase DTU dtu_consumption_percent Metrik ini menunjukkan konsumsi DTU terhadap batas beban kerja pengguna database atau kumpulan elastis, yang dinyatakan sebagai persentase. Persentase DTU berasal dari tiga metrik lainnya: persentase CPU, persentase IO Data, dan persentase IO Log. Kapan saja, persentase DTU cocok dengan nilai tertinggi di antara ketiga metrik ini.
CPU yang digunakan cpu_used Metrik ini menunjukkan konsumsi CPU terhadap batas beban kerja pengguna database atau kumpulan elastis, yang dinyatakan sebagai jumlah vCore. Untuk informasi selengkapnya, lihat Mendiagnosis dan memecahkan masalah CPU tinggi di Azure SQL Database.
DTU yang digunakan dtu_used Metrik ini memperlihatkan jumlah DTU yang digunakan oleh database atau kumpulan elastis.
CPU aplikasi ditagih app_cpu_billed Untuk database tanpa server, metrik ini menunjukkan jumlah komputasi (CPU dan memori) yang ditagih, yang dinyatakan dalam detik vCore. Untuk informasi selengkapnya, lihat Penagihan di tingkat komputasi tanpa server.
Persentase CPU aplikasi app_cpu_percent Untuk database tanpa server, metrik ini menunjukkan konsumsi CPU terhadap batas vCore maksimum paket aplikasi, yang dinyatakan sebagai persentase. Untuk informasi selengkapnya, lihat Pemantauan di tingkat komputasi tanpa server.
Persentase memori aplikasi app_memory_percent Untuk database tanpa server, metrik ini menunjukkan konsumsi memori terhadap batas memori maksimum paket aplikasi, yang dinyatakan sebagai persentase. Untuk informasi selengkapnya, lihat Pemantauan di tingkat komputasi tanpa server.
Jumlah sesi sessions_count Metrik ini memperlihatkan jumlah sesi pengguna yang dibuat untuk database atau kumpulan elastis.
Ruang data yang digunakan storage Untuk database, metrik ini menunjukkan jumlah ruang penyimpanan yang digunakan dalam file data database.
Ruang data yang digunakan storage_used Untuk kumpulan elastis, metrik ini menunjukkan jumlah ruang penyimpanan yang digunakan dalam file data semua database dalam kumpulan elastis.
Ruang data dialokasikan allocated_data_storage Metrik ini menunjukkan jumlah ruang penyimpanan yang ditempati oleh file data database, atau oleh file data semua database dalam kumpulan elastis. File data mungkin berisi ruang kosong. Karena itu, Ruang data yang dialokasikan jika sering lebih tinggi dari Ruang data yang digunakan untuk database atau kumpulan elastis yang sama. Untuk informasi selengkapnya, lihat Mengelola ruang file untuk database di Azure SQL Database.
Persentase ruang data yang digunakan storage_percent Untuk database, metrik ini menunjukkan jumlah ruang penyimpanan yang digunakan dalam file data database menuju batas ukuran data database. Untuk kumpulan elastis, ini menunjukkan jumlah ruang penyimpanan yang digunakan dalam file data semua database dalam kumpulan elastis, yang dinyatakan sebagai persentase terhadap batas ukuran data kumpulan elastis. Batas ukuran data untuk database atau kumpulan elastis mungkin dikonfigurasi lebih rendah dari batas ukuran data maksimum . Untuk menemukan batas ukuran data maksimum , lihat batas sumber daya untuk database vCore, kumpulan elastis vCore, database DTU, dan kumpulan elastis DTU.
Persentase ruang data yang dialokasikan allocated_data_storage_percent Untuk kumpulan elastis, metrik ini menunjukkan jumlah ruang penyimpanan yang ditempati oleh file data semua database dalam kumpulan elastis menuju batas ukuran data kumpulan, yang dinyatakan sebagai persentase.
Log Persen Tempdb Yang Digunakan tempdb_log_used_percent Metrik ini menunjukkan konsumsi ruang log transaksi dalam tempdb database menuju ukuran log maksimum, yang dinyatakan sebagai persentase. Untuk informasi selengkapnya, lihat tempdb di Azure SQL Database.
Koneksi berhasil connection_successful Metrik ini memperlihatkan jumlah koneksi yang berhasil dibuat ke database. Metrik ini dapat dibagi dua dimensi, SslProtocol dan ValidatedDriverNameAndVersion, untuk melihat jumlah koneksi menggunakan versi protokol enkripsi tertentu, atau menggunakan driver klien tertentu.
Koneksi gagal : Kesalahan Sistem connection_failed Metrik ini memperlihatkan jumlah upaya koneksi ke database yang gagal karena kesalahan layanan internal. Paling umum, kesalahan tersebut bersifat sementara. Metrik ini dapat dibagi dua dimensi, Error dan ValidatedDriverNameAndVersion, untuk melihat jumlah upaya koneksi yang gagal karena kesalahan tertentu, atau dari driver klien tertentu.
Koneksi gagal : Kesalahan Pengguna connection_failed_user_error Metrik ini memperlihatkan jumlah upaya koneksi ke database yang gagal karena kesalahan yang dapat dikoreksi pengguna, seperti kata sandi yang salah atau koneksi yang diblokir oleh firewall. Metrik ini dapat dibagi dua dimensi, Error dan ValidatedDriverNameAndVersion, untuk melihat jumlah upaya koneksi yang gagal karena kesalahan tertentu, atau dari driver klien tertentu.
Kebuntuan deadlock Metrik ini memperlihatkan jumlah kebuntuan dalam database.

Peringatan

Anda dapat membuat aturan pemberitahuan untuk memberi tahu Anda bahwa nilai satu metrik atau beberapa metrik berada di luar rentang yang diharapkan.

Anda dapat mengatur cakupan aturan pemberitahuan dengan beberapa cara agar sesuai dengan kebutuhan Anda. Misalnya, cakupan aturan pemberitahuan dapat diatur ke:

  • Database tunggal
  • Kumpulan elastis
  • Semua database atau kumpulan elastis dalam grup sumber daya
  • Semua database atau kumpulan elastis dalam langganan dalam wilayah Azure
  • Semua database atau kumpulan elastis dalam langganan di semua wilayah

Aturan pemberitahuan secara berkala mengevaluasi nilai metrik agregat selama periode lookback, membandingkannya dengan nilai ambang batas. Anda dapat mengonfigurasi nilai ambang batas, frekuensi evaluasi, dan periode lookback.

Jika aturan pemberitahuan dipicu, Anda akan diberi tahu sesuai dengan preferensi pemberitahuan, yang Anda tentukan dalam grup tindakan yang ditautkan ke aturan pemberitahuan. Misalnya, Anda dapat menerima email, SMS, atau pemberitahuan suara. Aturan pemberitahuan juga dapat memicu tindakan seperti webhook, runbook otomatisasi, fungsi, aplikasi logika, dll. Anda dapat mengintegrasikan pemberitahuan dengan produk manajemen layanan TI yang didukung.

Untuk mempelajari selengkapnya tentang pemberitahuan Azure Monitor, lihat Gambaran umum pemberitahuan Azure Monitor. Untuk membiasakan diri dengan pemberitahuan metrik, tinjau Pemberitahuan metrik, Kelola aturan pemberitahuan, dan Grup tindakan.

Metrik dan ambang optimal untuk digunakan dalam aturan pemberitahuan bervariasi di seluruh spektrum beban kerja pelanggan di Azure SQL Database.

Pemberitahuan yang direkomendasikan dalam tabel berikut adalah titik awal untuk membantu Anda menentukan konfigurasi pemberitahuan optimal untuk sumber daya Azure SQL Database Anda. Bergantung pada kebutuhan Anda, konfigurasi Anda mungkin berbeda dari contoh ini. Anda mungkin menggunakan ambang batas, frekuensi evaluasi, atau periode lookback yang berbeda. Anda dapat memilih untuk membuat pemberitahuan tambahan, atau menggunakan konfigurasi aturan pemberitahuan yang berbeda untuk aplikasi dan lingkungan yang berbeda.

Berikut adalah contoh konfigurasi aturan pemberitahuan umum.

Nama aturan pemberitahuan Metrik (sinyal) Logika pemberitahuan Kapan harus mengevaluasi Tingkat keparahan yang disarankan
Penggunaan CPU pengguna tinggi Persentase CPU Ambang: Static
Agregasi:
Average Operator: Greater than
Nilai ambang batas:90
Periksa setiap: 1 minute
Periode lookback: 10 minutes
2 - Peringatan
Total penggunaan CPU yang tinggi Persentase CPU instans SQL Ambang: Static
Agregasi:
Average Operator: Greater than
Nilai ambang batas:90
Periksa setiap: 1 minute
Periode lookback: 10 minutes
2 - Peringatan
Penggunaan pekerja tinggi Persentase pekerja Ambang: Static
Agregasi:
Minimum Operator: Greater than
Nilai ambang batas:60
Periksa setiap: 1 minute
Periode lookback: 5 minutes
1 - Kesalahan
Penggunaan IO data tinggi Persentase IO Data Ambang: Static
Agregasi:
Average Operator: Greater than
Nilai ambang batas:90
Periksa setiap: 1 minute
Periode lookback: 15 minutes
3 - Informasi
Ruang data rendah Persentase ruang data yang digunakan Ambang: Static
Agregasi:
Minimum Operator: Greater than
Nilai ambang batas:95
Periksa setiap: 15 minute
Periode lookback: 15 minutes
1 - Kesalahan
Ruang log rendah tempdb Log Persen Tempdb Yang Digunakan Ambang: Static
Agregasi:
Minimum Operator: Greater than
Nilai ambang batas:60
Periksa setiap: 1 minute
Periode lookback: 5 minutes
1 - Kesalahan
Kebuntuan Kebuntuan Ambang: Dynamic
Agregasi:
Total Operator: Greater than
Sensitivitas ambang batas:Medium
Periksa setiap: 15 minutes
Periode lookback: 1 hour
3 - Informasi
Koneksi gagal (kesalahan pengguna) Koneksi gagal : Kesalahan Pengguna Ambang: Dynamic
Agregasi:
Total Operator: Greater than
Sensitivitas ambang batas:Medium
Periksa setiap: 5 minutes
Periode lookback: 15 minutes
2 - Peringatan
Koneksi gagal (kesalahan sistem) Koneksi gagal : Kesalahan Sistem Ambang: Static
Agregasi:
Total Operator: Greater than
Unit: Count
Nilai ambang batas:10
Periksa setiap: 1 minute
Periode lookback: 5 minutes
2 - Peringatan
Laju koneksi anomali Koneksi berhasil Ambang: Dynamic
Agregasi:
Total Operator: Greater or Less than
Sensitivitas ambang batas:Low
Periksa setiap: 5 minutes
Periode lookback: 15 minutes
2 - Peringatan

Beberapa aturan pemberitahuan yang direkomendasikan menggunakan ambang batas dinamis untuk mendeteksi pola metrik anomali yang mungkin memerlukan perhatian. Aturan pemberitahuan berdasarkan ambang batas dinamis tidak memicu sampai data historis yang memadai telah dikumpulkan untuk menetapkan pola normal. Untuk informasi selengkapnya, lihat Ambang batas dinamis dalam pemberitahuan metrik.

Secara default, pemberitahuan metrik bersifat stateful. Ini berarti bahwa setelah aturan pemberitahuan dipicu, pemberitahuan hanya diaktifkan sekali. Pemberitahuan tetap dalam status fired hingga diselesaikan, di mana pemberitahuan resolved dikirim. Aturan pemberitahuan memicu pemberitahuan baru hanya setelah pemberitahuan sebelumnya diselesaikan. Pemberitahuan stateful menghindari pemberitahuan yang sering tentang kondisi yang sedang berlangsung. Untuk informasi selengkapnya tentang pemberitahuan stateful dan stateless, lihat Pemberitahuan dan status.