Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
BERLAKU UNTUK: Azure SQL Database, Azure SQL Managed Instance
Perhatian
Azure SQL Analytics (pratinjau) adalah integrasi dengan Azure Monitor, di mana banyak solusi pemantauan tidak lagi dikembangkan secara aktif. Untuk opsi pemantauan lainnya, lihat Pemantauan dan penyetelan performa di Azure SQL Database dan Azure SQL Managed Instance.
Azure SQL Analytics (pratinjau) adalah solusi pemantauan cloud tingkat lanjut untuk memantau performa semua database Azure SQL Anda dalam skala besar dan di beberapa langganan dalam satu tampilan. Azure SQL Analytics mengumpulkan dan memvisualisasikan metrik performa utama dengan kecerdasan bawaan untuk pemecahan masalah performa.
Dengan menggunakan metrik yang dikumpulkan ini, Anda dapat membuat aturan dan pemberitahuan pemantauan kustom. Azure SQL Analytics membantu Anda mengidentifikasi masalah di setiap lapisan tumpukan aplikasi Anda. Azure SQL Analytics menggunakan metrik Azure Diagnostics bersama dengan tampilan Azure Monitor untuk menyajikan data tentang semua database Azure SQL Anda dalam satu ruang kerja Analitik Log. Azure Monitor membantu Anda mengumpulkan, menghubungkan, dan memvisualisasikan data terstruktur dan tidak terstruktur.
Sumber tersambung
Azure SQL Analytics adalah solusi pemantauan khusus cloud yang mendukung streaming telemetri diagnostik untuk semua database Azure SQL Anda. Karena Azure SQL Analytics tidak menggunakan agen untuk terhubung ke Azure Monitor, azure SQL Server tidak mendukung pemantauan SQL Server yang dihosting secara lokal atau di komputer virtual.
Sumber Tersambung | Didukung | Deskripsi |
---|---|---|
Pengaturan diagnostik | Ya | Metrik Azure dan data log dikirim secara langsung ke Log Azure Monitor oleh Azure. |
Akun penyimpanan Azure | Tidak | Azure Monitor tidak membaca data dari akun penyimpanan. |
agen Windows | Tidak | Agen Windows tidak secara langsung digunakan oleh Azure SQL Analytics. |
agent Linux | Tidak | Agen Linux secara langsung tidak digunakan oleh Azure SQL Analytics. |
grup manajemen Manajer Operasi Pusat Sistem | Tidak | Koneksi langsung dari agen Manajer Operasi ke Azure Monitor tidak digunakan oleh Azure SQL Analytics. |
Pilihan Azure SQL Analytics
Tabel di bawah ini menguraikan opsi yang didukung untuk dua versi dasbor Azure SQL Analytics, satu untuk Azure SQL Database, dan yang lainnya untuk database Azure SQL Managed Instance.
Opsi Azure SQL Analytics | Deskripsi | Dukungan Basis Data SQL | Dukungan SQL Managed Instance |
---|---|---|---|
Sumber daya menurut jenis | Perspektif yang menghitung semua sumber daya yang dipantau. | Ya | Ya |
Wawasan | Menyediakan penelusuran hierarkis ke dalam Wawasan Cerdas tentang performa. | Ya | Ya |
Kesalahan | Menyediakan penelusuran hierarkis ke dalam kesalahan SQL yang terjadi pada database. | Ya | Ya |
Istirahat | Menyediakan penelusuran hierarkis terperinci ke dalam batas waktu SQL yang terjadi pada database. | Ya | Tidak |
Pemblokiran | Menyediakan penelusuran hierarkis ke dalam pemblokiran SQL yang terjadi pada database. | Ya | Tidak |
Database menunggu | Menyediakan penelusuran hierarkis ke dalam statistik tunggu SQL pada tingkat database. Mencakup ringkasan total waktu tunggu dan waktu tunggu per jenis tunggu. | Ya | Tidak |
Durasi kueri | Menyediakan penelusuran hierarkis ke dalam statistik eksekusi kueri seperti durasi kueri, penggunaan CPU, penggunaan IO Data, penggunaan IO Log. | Ya | Ya |
Kueri menunggu | Menyediakan penelusuran hierarkis ke dalam statistik tunggu kueri menurut kategori tunggu. | Ya | Ya |
Pengaturan Azure SQL Analytics (pratinjau)
Gunakan proses yang dijelaskan dalam Menambahkan solusi Azure Monitor dari Galeri Solusi untuk menambahkan Azure SQL Analytics (Pratinjau) ke ruang kerja Analitik Log Anda.
Mengonfigurasi Azure SQL Database untuk mengalirkan telemetri diagnostik
Setelah membuat solusi Azure SQL Analytics di ruang kerja, Anda perlu mengonfigurasi setiap sumber daya yang ingin Dipantau untuk mengalirkan telemetri diagnostiknya ke Azure SQL Analytics. Ikuti instruksi terperinci di halaman ini:
- Aktifkan Diagnostik Azure untuk database Anda untuk mengalirkan telemetri diagnostik ke Azure SQL Analytics.
Halaman di atas juga menyediakan instruksi tentang mengaktifkan dukungan untuk memantau beberapa langganan Azure dari satu ruang kerja Azure SQL Analytics sebagai panel kaca tunggal.
Gunakan Azure SQL Analytics (pratinjau)
Arahkan ke penerapan SQL Analytics Anda dari halaman Legacy solutions Log Analytics workspace.
Azure SQL Analytics menyediakan dua tampilan terpisah: satu untuk memantau SQL Database, dan tampilan lainnya untuk memantau SQL Managed Instance.
Menampilkan data Azure SQL Analytics
Dasbor mencakup gambaran umum semua database yang dipantau melalui perspektif yang berbeda. Agar perspektif yang berbeda berfungsi, Anda harus mengaktifkan metrik atau log yang tepat pada sumber daya SQL Anda untuk dialirkan ke ruang kerja Log Analytics.
Jika beberapa metrik atau log tidak dialirkan ke Azure Monitor, petak peta di Azure SQL Analytics tidak diisi dengan informasi pemantauan.
Tampilan SQL Database
Setelah petak peta Azure SQL Analytics untuk database dipilih, dasbor pemantauan ditampilkan.
Ketika memilih salah satu kotak, akan membuka laporan rinci perspektif tertentu. Setelah perspektif dipilih, laporan penelusuran akan dibuka.
Setiap perspektif dalam tampilan ini menyediakan ringkasan di tingkat langganan, server, kumpulan elastis, dan database. Selain itu, setiap perspektif menunjukkan perspektif khusus untuk laporan di sebelah kanan. Memilih langganan, server, kumpulan, atau database dari daftar melanjutkan penelusuran paling detail.
Tampilan SQL Managed Instance
Setelah petak peta Azure SQL Analytics untuk database dipilih, dasbor pemantauan ditampilkan.
Ketika memilih salah satu kotak, akan membuka laporan rinci perspektif tertentu. Setelah perspektif dipilih, laporan penelusuran akan dibuka.
Memilih tampilan SQL Managed Instance, menunjukkan detail tentang pemanfaatan instans, database instans, dan telemetri pada kueri yang dijalankan di seluruh instans terkelola.
Laporan Wawasan Cerdas
Azure SQL Database Intelligent Insights memungkinkan Anda mengetahui apa yang terjadi dengan performa semua database Azure SQL. Semua Wawasan Cerdas yang dikumpulkan dapat divisualisasikan dan diakses melalui perspektif Wawasan.
Kumpulan elastis dan laporan basis data
Kumpulan elastis dan database memiliki laporan spesifik mereka sendiri yang menunjukkan semua data yang dikumpulkan untuk sumber daya dalam waktu yang ditentukan.
Laporan Permintaan
Melalui perspektif durasi kueri dan waktu tunggu kueri, Anda dapat menghubungkan performa kueri melalui laporan kueri. Laporan ini membandingkan performa kueri di berbagai database dan memudahkan untuk menentukan database yang melakukan kueri yang dipilih dengan baik versus yang lambat.
Hak akses
Untuk menggunakan Azure SQL Analytics (pratinjau), pengguna harus diberikan izin minimum peran Pembaca di Azure. Namun, peran ini tidak memungkinkan pengguna untuk melihat teks kueri, atau melakukan tindakan penyetelan Otomatis apa pun. Peran yang lebih permisif di Azure yang memungkinkan penggunaan Azure SQL Analytics sepenuhnya adalah Pemilik, Kontributor, Kontributor SQL DB, atau Kontributor SQL Server. Anda juga mungkin ingin mempertimbangkan untuk membuat peran kustom di portal dengan izin tertentu yang diperlukan hanya untuk menggunakan Azure SQL Analytics, dan tanpa akses untuk mengelola sumber daya lain.
Membuat peran kustom di portal
Nota
Kami menyarankan agar Anda menggunakan modul Azure Az PowerShell untuk berinteraksi dengan Azure. Lihat Menginstal Azure PowerShell untuk memulai. Untuk mempelajari cara bermigrasi ke modul Az PowerShell, lihat Memigrasikan Azure PowerShell dari AzureRM ke Az.
Mengenali bahwa beberapa organisasi menerapkan kontrol izin yang ketat di Azure, temukan skrip PowerShell berikut yang memungkinkan pembuatan peran kustom "Operator Pemantauan Analitik SQL" di portal Microsoft Azure dengan izin baca dan tulis minimum yang diperlukan untuk menggunakan Azure SQL Analytics sepenuhnya.
Ganti "{SubscriptionId}" di skrip di bawah ini dengan ID langganan Anda di Azure, dan jalankan skrip dengan peran Pemilik atau Kontributor di Azure.
Connect-AzAccount
Select-AzSubscription {SubscriptionId}
$role = Get-AzRoleDefinition -Name Reader
$role.Name = "SQL Analytics Monitoring Operator"
$role.Description = "Lets you monitor database performance with Azure SQL Analytics as a reader. Does not allow change of resources."
$role.IsCustom = $true
$role.Actions.Add("Microsoft.SQL/servers/databases/read");
$role.Actions.Add("Microsoft.SQL/servers/databases/topQueries/queryText/*");
$role.Actions.Add("Microsoft.Sql/servers/databases/advisors/read");
$role.Actions.Add("Microsoft.Sql/servers/databases/advisors/write");
$role.Actions.Add("Microsoft.Sql/servers/databases/advisors/recommendedActions/read");
$role.Actions.Add("Microsoft.Sql/servers/databases/advisors/recommendedActions/write");
$role.Actions.Add("Microsoft.Sql/servers/databases/automaticTuning/read");
$role.Actions.Add("Microsoft.Sql/servers/databases/automaticTuning/write");
$role.Actions.Add("Microsoft.Sql/servers/advisors/read");
$role.Actions.Add("Microsoft.Sql/servers/advisors/write");
$role.Actions.Add("Microsoft.Sql/servers/advisors/recommendedActions/read");
$role.Actions.Add("Microsoft.Sql/servers/advisors/recommendedActions/write");
$role.Actions.Add("Microsoft.Resources/deployments/write");
$role.AssignableScopes = "/subscriptions/{SubscriptionId}"
New-AzRoleDefinition $role
Setelah peran baru dibuat, tetapkan peran ini ke setiap pengguna yang perlu Anda berikan izin kustom untuk menggunakan Azure SQL Analytics.
Menganalisis data dan membuat pemberitahuan
Analisis data di Azure SQL Analytics didasarkan pada bahasa Analitik Log untuk kueri dan pelaporan kustom Anda. Temukan deskripsi data yang tersedia yang dikumpulkan dari sumber daya basis data guna melakukan kueri kustom dalam metrik dan log yang tersedia.
Pemberitahuan otomatis di Azure SQL Analytics didasarkan pada penulisan kueri Analitik Log yang memicu pemberitahuan setelah kondisi terpenuhi. Temukan beberapa contoh di bawah ini berkaitan dengan kueri Analitik Log yang dapat digunakan untuk pengaturan pemberitahuan di Azure SQL Analytics.
Membuat pemberitahuan untuk Azure SQL Database
Anda dapat dengan mudah membuat pemberitahuan dengan data yang berasal dari sumber daya Azure SQL Database. Berikut adalah beberapa kueri log berguna yang dapat Anda gunakan dengan peringatan log:
CPU tinggi
AzureMetrics
| where ResourceProvider=="MICROSOFT.SQL"
| where ResourceId contains "/DATABASES/"
| where MetricName=="cpu_percent"
| summarize AggregatedValue = max(Maximum) by bin(TimeGenerated, 5m)
| render timechart
Nota
- Prasyarat menyiapkan pemberitahuan ini adalah database yang dipantau mengalirkan metrik dasar ke ruang kerja Analitik Log yang digunakan oleh Azure SQL Analytics.
- Ganti nilai
cpu_percent
MetricName dengandtu_consumption_percent
untuk mendapatkan hasil DTU tinggi sebagai gantinya.
Penggunaan CPU yang tinggi pada kumpulan elastis
AzureMetrics
| where ResourceProvider=="MICROSOFT.SQL"
| where ResourceId contains "/ELASTICPOOLS/"
| where MetricName=="cpu_percent"
| summarize AggregatedValue = max(Maximum) by bin(TimeGenerated, 5m)
| render timechart
Nota
- Prasyarat penyiapan pemberitahuan ini adalah database yang dipantau mengalirkan metrik Dasar ke ruang kerja Analitik Log yang digunakan oleh Azure SQL Analytics.
- Ganti nilai
cpu_percent
MetricName dengandtu_consumption_percent
untuk mendapatkan hasil DTU tinggi sebagai gantinya.
Penyimpanan rata-rata di atas 95% dalam 1 jam terakhir
let time_range = 1h;
let storage_threshold = 95;
AzureMetrics
| where ResourceId contains "/DATABASES/"
| where MetricName == "storage_percent"
| summarize max_storage = max(Average) by ResourceId, bin(TimeGenerated, time_range)
| where max_storage > storage_threshold
| distinct ResourceId
Nota
- Prasyarat menyiapkan pemberitahuan ini adalah database yang dipantau mengalirkan metrik dasar ke ruang kerja Analitik Log yang digunakan oleh Azure SQL Analytics.
- Kueri ini mengharuskan aturan pemberitahuan disiapkan untuk memicu pemberitahuan saat terdapat hasil (> 0 hasil) dari kueri, yang menunjukkan bahwa kondisi tersebut ada di beberapa database. Output adalah daftar sumber daya database yang terletak di atas
storage_threshold
dalamtime_range
yang ditentukan. - Output adalah daftar sumber daya database yang terletak di atas
storage_threshold
dalamtime_range
yang ditentukan.
Pemberitahuan tentang Wawasan cerdas
Penting
Jika database berkinerja baik, dan tidak ada Wawasan Cerdas yang dihasilkan, kueri ini akan gagal dengan pesan kesalahan: Gagal mengatasi ekspresi skalar bernama rootCauseAnalysis_s
. Perilaku ini diharapkan untuk semua kasus di mana tidak ada wawasan cerdas untuk database.
let alert_run_interval = 1h;
let insights_string = "hitting its CPU limits";
AzureDiagnostics
| where Category == "SQLInsights" and status_s == "Active"
| where TimeGenerated > ago(alert_run_interval)
| where rootCauseAnalysis_s contains insights_string
| distinct ResourceId
Nota
- Prasyarat untuk menyiapkan pemberitahuan ini adalah bahwa database yang dipantau mengalirkan log diagnostik SQLInsights ke ruang kerja Analitik Log yang digunakan oleh Azure SQL Analytics.
- Kueri ini mengharuskan aturan pemberitahuan disiapkan untuk dijalankan dengan frekuensi yang sama seperti
alert_run_interval
untuk menghindari hasil duplikat. Aturan harus disiapkan untuk menonaktifkan pemberitahuan ketika ada hasil (> 0 hasil) dari kueri. - Sesuaikan
alert_run_interval
untuk menentukan rentang waktu guna memeriksa apakah kondisi telah terjadi pada database yang dikonfigurasi untuk mengalirkan log SQLInsights ke Azure SQL Analytics. - Sesuaikan insights_string untuk mengambil output teks analisis akar penyebab dari Insights. Ini adalah teks yang sama yang ditampilkan di antarmuka pengguna Azure SQL Analytics yang dapat Anda gunakan dari wawasan yang ada. Atau, Anda dapat menggunakan kueri di bawah ini untuk melihat teks semua Insight yang dihasilkan pada langganan Anda. Gunakan output kueri untuk menghimpun string yang berbeda guna menyiapkan peringatan pada Insights.
AzureDiagnostics
| where Category == "SQLInsights" and status_s == "Active"
| distinct rootCauseAnalysis_s
Membuat pemberitahuan untuk SQL Managed Instance
Penyimpanan di atas 90%
let storage_percentage_threshold = 90;
AzureDiagnostics
| where Category =="ResourceUsageStats"
| summarize (TimeGenerated, calculated_storage_percentage) = arg_max(TimeGenerated, todouble(storage_space_used_mb_s) *100 / todouble (reserved_storage_mb_s))
by ResourceId
| where calculated_storage_percentage > storage_percentage_threshold
Nota
- Prasyarat untuk menyiapkan pemberitahuan ini adalah bahwa instans terkelola yang dipantau memiliki streaming log ResourceUsageStats yang diaktifkan ke ruang kerja Analitik Log yang digunakan oleh Azure SQL Analytics.
- Kueri ini memerlukan aturan pemberitahuan yang disiapkan untuk mengirimkan pemberitahuan ketika ada hasil (> 0 hasil) dari kueri, yang menunjukkan bahwa kondisi tersebut ada pada instans terkelola. Hasilnya adalah persentase konsumsi penyimpanan pada instans yang dikelola.
Konsumsi rata-rata CPU di atas 95% dalam 1 jam terakhir
let cpu_percentage_threshold = 95;
let time_threshold = ago(1h);
AzureDiagnostics
| where Category == "ResourceUsageStats" and TimeGenerated > time_threshold
| summarize avg_cpu = max(todouble(avg_cpu_percent_s)) by ResourceId
| where avg_cpu > cpu_percentage_threshold
Nota
- Prasyarat untuk menyiapkan pemberitahuan ini adalah bahwa instans terkelola yang dipantau memiliki streaming log ResourceUsageStats yang diaktifkan ke ruang kerja Analitik Log yang digunakan oleh Azure SQL Analytics.
- Kueri ini memerlukan aturan pemberitahuan yang disiapkan untuk mengirimkan pemberitahuan ketika ada hasil (> 0 hasil) dari kueri, yang menunjukkan bahwa kondisi tersebut ada pada instans terkelola. Outputnya adalah konsumsi persentase pemanfaatan CPU rata-rata dalam periode yang ditentukan pada instans terkelola.
Harga
Meskipun Azure SQL Analytics (pratinjau) gratis digunakan, penggunaan telemetri diagnostik yang melebihi kuota penyerapan data gratis bulanan akan dikenakan biaya, lihat Harga Log Analytics. Unit gratis penyerapan data yang disediakan memungkinkan pemantauan gratis beberapa database setiap bulan. Database yang lebih aktif dengan beban kerja yang lebih berat menyerap lebih banyak data versus database yang tidak aktif. Anda dapat dengan mudah memantau konsumsi penyerapan data Anda di Azure SQL Analytics dengan memilih Ruang Kerja OMS pada menu navigasi Azure SQL Analytics, lalu memilih Penggunaan dan Perkiraan Biaya.
Langkah berikutnya
- Gunakan kueri log di Azure Monitor untuk melihat data Azure SQL terperinci.
- Buat dasbor Anda sendiri yang memperlihatkan data Azure SQL.
- Buat pemberitahuan saat peristiwa Azure SQL tertentu terjadi.
- Memantau Azure SQL Database dengan Azure Monitor
- Memantau Azure SQL Managed Instance dengan Azure Monitor