Aktifkan pemantauan kinerja untuk Microsoft SQL (pratinjau)

Artikel ini menjelaskan cara mengaktifkan dan menonaktifkan pemantauan kinerja untuk layanan Microsoft SQL sehingga data kinerja muncul di halaman Kinerja Database Hub. Mengaktifkan pemantauan kinerja tidak menimbulkan biaya tambahan. Anda tidak perlu menerapkan atau memelihara agen pemantauan, penyimpanan data, atau infrastruktur pemantauan lainnya.

Important

Fitur ini sedang dalam tahap pratinjau.

Langkah-langkah untuk mengaktifkan pemantauan kinerja berbeda-beda tergantung layanan. Setelah Anda mengaktifkan pemantauan, setiap layanan mengirimkan data kinerja ke pipeline telemetri yang sama. Database Hub menggunakan data ini untuk membantu mengidentifikasi masalah kinerja dan membuat dasbor. Anda juga dapat mengueri telemetri secara langsung dengan KQL. Untuk informasi lebih lanjut, lihat telemetri pemantauan kinerja kueri. Artikel ini membahas layanan berikut:

Anda dapat melihat sumber daya Microsoft SQL di Database Hub dari Azure, Fabric, dan secara lokal. Jenis sumber daya berikut termasuk:

  • Azure SQL Database
  • Azure SQL Managed Instance
  • SQL Server di mesin virtual Azure
  • SQL Server diaktifkan oleh Azure Arc
  • Azure SQL Database kumpulan elastis
  • Basis data SQL dalam Fabric

Jenis sumber daya berikut terlihat di Database Hub, tetapi halaman Performance belum mendukungnya:

  • Basis data SQL dalam Fabric
  • Azure SQL Database kumpulan elastis
  • Azure SQL Managed Instance
  • Pemantauan kinerja tidak mengumpulkan data dari database di pool elastis Azure SQL Database atau dari replika sekunder.

Ketersediaan regional dan penanganan data

Pemantauan kinerja tersedia untuk sumber daya Microsoft SQL di wilayah Azure berikut. Awan pemerintah, awan kedaulatan, dan awan terisolasi tidak didukung selama pratinjau. Untuk informasi selengkapnya, lihat Ketersediaan wilayah Fabric.

  • Brasil Selatan
  • Kanada Tengah
  • Kanada Timur
  • US Tengah
  • US Timur
  • US Timur 2
  • US Tengah Utara
  • US Tengah Selatan
  • Barat Sentral AS
  • US Barat
  • Barat AS 2
  • Barat AS 3

Pemantauan kinerja mengumpulkan data kinerja dari dynamic management views (DMV) pada sumber daya SQL Anda. Pemantauan kinerja tidak mengumpulkan data pribadi atau konten pelanggan, dan data tersebut tidak disimpan secara diam-diam di luar geografis sumber daya SQL yang dipantau.

Daftarkan penyedia sumber daya SQL

Untuk melihat data pemantauan kinerja, daftarkan Microsoft.Sql penyedia sumber daya di setiap langganan yang berisi sumber daya basis data yang ingin Anda pantau. Untuk informasi lebih lanjut, lihat daftar penyedia az.

az provider register --namespace Microsoft.Sql

Untuk memeriksa status registrasi, jalankan perintah berikut. Registrasi dianggap selesai saat perintah mengembalikan Registered.

az provider show --namespace Microsoft.Sql --query "registrationState" --output tsv

Aktifkan pemantauan kinerja untuk Azure SQL Database

Gunakan salah satu metode berikut:

  • Di Database Hub, buka halaman Estate , pilih sumber daya, lalu pilih Aktifkan Pemantauan Kinerja.
  • Jalankan skrip T-SQL berikut pada setiap database pengguna yang ingin Anda pantau. Jangan jalankan skrip di master database. Untuk menerapkan skrip ke beberapa server sekaligus, pertimbangkan kueri multiserver di SQL Server Management Studio (SSMS). Tambahkan MS_EnablePerformanceMonitoringPreview properti yang diperluas ke setiap database pengguna yang ingin Anda pantau.
IF EXISTS (
    SELECT 1
    FROM sys.extended_properties
    WHERE class = 0
      AND name = N'MS_EnablePerformanceMonitoringPreview'
)
BEGIN
    EXEC sys.sp_updateextendedproperty
        @name = N'MS_EnablePerformanceMonitoringPreview',
        @value = N'true';
END
ELSE
BEGIN
    EXEC sys.sp_addextendedproperty
        @name = N'MS_EnablePerformanceMonitoringPreview',
        @value = N'true';
END;
GO

Cara menonaktifkan pemantauan kinerja untuk Azure SQL Database

Untuk menghentikan pengumpulan data kinerja untuk database pengguna, ubah @value = N'true' ke @value = N'false' dalam kedua panggilan prosedur, lalu jalankan ulang skrip T-SQL pada database tersebut.

Aktifkan pemantauan kinerja untuk SQL Server pada Azure VM

Untuk mengaktifkan pemantauan kinerja pada SQL Server pada Azure VM, tambahkan DatabaseWatcheronAzureVM bendera fitur ke pengaturan publik ekstensi SQL IaaS Agent. Ekstensi kemudian mengumpulkan data kinerja dari instance SQL Server dan menggunakan identitas terkelola yang ditetapkan sistem pada VM untuk mengunggahnya ke endpoint telemetri regional. Pemantauan dikonfigurasi untuk setiap VM. Mengaktifkan fitur flag pada satu VM tidak memungkinkan pemantauan pada VM lain.

Untuk verifikasi, pemecahan masalah, dan daftar lengkap dataset yang dikumpulkan, lihat Aktifkan pemantauan kinerja untuk SQL Server pada VM Azure.

Prasyarat untuk SQL Server di Azure VM

  • Pemantauan kinerja mendukung SQL Server 2016 SP1 dan versi selanjutnya pada VM Azure. Versi SQL Server yang lebih awal dari SQL Server 2016 SP1 tidak didukung.
  • Pemantauan kinerja mengumpulkan semua dataset untuk edisi SQL Server Enterprise dan Standard. Untuk edisi SQL Server Developer, Express, dan Evaluation, pemantauan kinerja hanya mengumpulkan data koneksi klien.
  • Anda harus menginstal versi 2.0.229.0ekstensi SQL IaaS Agent atau versi yang lebih baru dalam mode manajemen penuh. Anda harus mengaktifkan ekstensi tersebut, dan status provisinya harus Succeeded.
  • VM harus memiliki identitas terkelola yang ditetapkan sistem yang diaktifkan.
  • Sumber daya instance SQL Server harus tersedia melalui inventaris terpadu.
  • Anda harus mendaftarkanMicrosoft.Sql penyedia sumber daya untuk langganan.
  • VM harus mengizinkan konektivitas HTTPS keluar pada port 443 ke telemetry.<region>.arcdataservices.com, di mana <region> adalah wilayah Azure yang menjadi host VM.
  • Anda membutuhkan versi terbaru dari Azure CLI.
  • Anda memerlukan izin untuk melihat dan memperbarui ekstensi pada VM, seperti keanggotaan dalam peran Kontributor Mesin Virtual .

Cara mengaktifkan pemantauan kinerja untuk SQL Server di Azure VM

Important

Pengaturan ekstensi SQL IaaS Agent tidak bersifat kumulatif. Saat Anda memperbarui ekstensi, sertakan semua pengaturan publik yang ada untuk menghindari menonaktifkan fitur lain secara tidak sengaja.

Langkah-langkah PowerShell berikut adalah mengambil pengaturan publik saat ini, menambahkan flag fitur pemantauan kinerja, dan menerapkan pengaturan gabungan ke ekstensi.

  1. Buka PowerShell di lingkungan tempat Azure CLI terpasang, lalu masuk ke Azure.

    az login
    
  2. Atur variabel untuk VM SQL Server Anda.

    $subscriptionId = "<subscription-id>"
    $resourceGroup = "<resource-group>"
    $vmName = "<vm-name>"
    
    az account set --subscription $subscriptionId
    
  3. Dapatkan pengaturan ekstensi SQL IaaS Agent saat ini.

    $extension = az vm extension show `
      --resource-group $resourceGroup `
      --vm-name $vmName `
      --name SqlIaasExtension `
      --query "{settings:settings,typeHandlerVersion:typeHandlerVersion}" `
      --output json | ConvertFrom-Json
    
    if ($null -eq $extension.settings) {
      $settings = [pscustomobject]@{}
    }
    else {
      $settings = $extension.settings
    }
    
  4. Tambahkan bendera DatabaseWatcheronAzureVM fitur sambil mempertahankan bendera fitur yang sudah ada.

    $monitoringFlag = [pscustomobject]@{
      Name = "DatabaseWatcheronAzureVM"
      Enable = $true
    }
    
    $featureFlags = @(
      $settings.FeatureFlags |
        Where-Object { $_.Name -ne $monitoringFlag.Name }
    )
    $featureFlags += $monitoringFlag
    
    $settings | Add-Member `
      -MemberType NoteProperty `
      -Name FeatureFlags `
      -Value $featureFlags `
      -Force
    
  5. Simpan pengaturan gabungan dan terapkan ke ekstensi SQL IaaS Agent.

    $settingsPath = Join-Path $env:TEMP "sqlvm-performance-monitoring-settings.json"
    
    try {
      $settings |
        ConvertTo-Json -Depth 50 |
        Out-File -FilePath $settingsPath -Encoding utf8
    
      az vm extension set `
        --resource-group $resourceGroup `
        --vm-name $vmName `
        --publisher Microsoft.SqlServer.Management `
        --name SqlIaaSAgent `
        --extension-instance-name SqlIaasExtension `
        --settings "@$settingsPath"
    }
    finally {
      Remove-Item $settingsPath -ErrorAction SilentlyContinue
    }
    
  6. Ulangi langkah-langkah ini untuk setiap VM yang ingin Anda pantau.

Ekstensi memuat ulang pengaturan publik secara otomatis. Anda tidak perlu memulai ulang layanan SQL Server IaaS Agent atau VM. Sebagian besar data performa tersedia dalam waktu 3 hingga 5 menit setelah pengaturan berlaku. Beberapa data berbasis inventaris dapat memakan waktu hingga 15 menit.

Untuk memastikan bahwa pemantauan berjalan, periksa status ekstensi:

az vm extension show `
  --resource-group $resourceGroup `
  --vm-name $vmName `
  --name SqlIaasExtension `
  --instance-view `
  --query "instanceView.statuses[0].message" `
  --output tsv

Ketika pemantauan kinerja berjalan dan mengunggah data dengan sukses, statusnya meliputi DatabaseMonitorArcPlugin: {"State":"Running","MetricsUploadStatus":"OK"}. Untuk memastikan data tersedia, jalankan query uji koneksi di Query performance monitoring telemetry.

Nonaktifkan pemantauan kinerja untuk SQL Server pada VM Azure

Untuk menghentikan pengumpulan data kinerja baru untuk VM, atur DatabaseWatcheronAzureVM bendera fitur ke false. Gabungkan perubahan dengan pengaturan publik yang ada agar fitur ekstensi SQL IaaS Agent lainnya tidak terpengaruh.

  1. Selesaikan langkah 1 sampai 3 di Aktifkan pemantauan kinerja untuk SQL Server pada VM Azure agar bisa masuk, atur variabel, dan ambil pengaturan saat ini.

  2. Atur DatabaseWatcheronAzureVM bendera fitur ke false sambil mempertahankan bendera fitur yang sudah ada.

    $monitoringFlag = [pscustomobject]@{
      Name = "DatabaseWatcheronAzureVM"
      Enable = $false
    }
    
    $featureFlags = @(
      $settings.FeatureFlags |
        Where-Object { $_.Name -ne $monitoringFlag.Name }
    )
    $featureFlags += $monitoringFlag
    
    $settings | Add-Member `
      -MemberType NoteProperty `
      -Name FeatureFlags `
      -Value $featureFlags `
      -Force
    
  3. Selesaikan langkah 5 dalam Aktifkan pemantauan kinerja untuk SQL Server pada VM Azure untuk menerapkan pengaturan gabungan ke ekstensi.

Beri waktu beberapa menit agar pengaturan baru berlaku, lalu periksa status ekstensi lagi untuk mengonfirmasi perubahan.

Aktifkan pemantauan kinerja untuk SQL Server yang diaktifkan oleh Azure Arc

Pemantauan kinerja untuk SQL Server yang diaktifkan oleh Azure Arc secara default aktif. Ketika sebuah instance memenuhi semua prasyarat dalam bagian ini, ia mengumpulkan data kinerja secara otomatis, dan Anda tidak perlu mengambil langkah lain. Untuk informasi lebih lanjut, lihat Monitor SQL Server yang diaktifkan oleh Azure Arc.

Prasyarat untuk SQL Server yang diaktifkan oleh Azure Arc

  • Ekstensi Azure untuk SQL Server (WindowsAgent.SqlServer) harus menggunakan versi 1.1.2504.99 atau yang lebih baru.
  • SQL Server harus berjalan di Windows. SQL Server di Linux tidak didukung. SQL Server pada Windows Server 2012 R2 dan versi sebelumnya tidak didukung.
  • SQL Server harus edisi Standard atau Enterprise.
  • SQL Server harus versi 2016 SP1 atau versi yang lebih baru.
  • Server harus memiliki konektivitas ke *.<region>.arcdataservices.com. Untuk informasi selengkapnya, lihat persyaratan jaringan.
  • Jenis lisensi pada SQL Server yang diaktifkan oleh Azure Arc harus Software Assurance atau bayar sesuai penggunaan.
  • Anda memerlukan peran Azure yang mencakup tindakan Microsoft.AzureArcData/sqlServerInstances/getTelemetry/. Peran Layanan Hanya Baca Azure Hybrid Database Administrator bawaan mencakup tindakan ini. Untuk informasi selengkapnya, lihat Peran bawaan Azure.
  • Instans kluster failover saat ini tidak didukung.

Cara mengaktifkan pemantauan kinerja untuk SQL Server yang diaktifkan oleh Azure Arc

Perintah berikut mengaktifkan pengumpulan data kinerja. Perintah mungkin berjalan dengan sukses, tetapi sistem hanya mengumpulkan data kinerja ketika instance memenuhi semua prasyarat dalam bagian ini.

Untuk mengaktifkan atau menonaktifkan koleksi di portal Azure:

  1. Pada halaman sumber daya untuk SQL Server yang diaktifkan oleh Azure Arc, pilih Dasbor Performa (pratinjau).
  2. Di bagian atas panel Dasbor Performa, pilih Konfigurasikan.
  3. Pada panel Konfigurasikan pengaturan pemantauan , gunakan tombol untuk mengaktifkan pengumpulan data pemantauan.
  4. Pilih Terapkan pengaturan.

Untuk mengaktifkan pengumpulan menggunakan Azure CLI, jalankan perintah berikut. Ganti tempat penampung untuk ID langganan, grup sumber daya, dan nama sumber daya.

az resource update --ids "/subscriptions/<sub_id>/resourceGroups/<resource_group>/providers/Microsoft.AzureArcData/SqlServerInstances/<resource_name>" --set 'properties.monitoring.enabled=true' --api-version 2023-09-01-preview

Cara menonaktifkan pemantauan kinerja untuk SQL Server yang diaktifkan oleh Azure Arc

Untuk mengaktifkan atau menonaktifkan koleksi di portal Azure:

  1. Pada halaman sumber daya untuk SQL Server yang diaktifkan oleh Azure Arc, pilih Dasbor Performa (pratinjau).
  2. Di bagian atas panel Dasbor Performa, pilih Konfigurasikan.
  3. Pada panel Konfigurasikan pengaturan pemantauan , gunakan tombol untuk mematikan pengumpulan data pemantauan.
  4. Pilih Terapkan pengaturan.

Untuk menonaktifkan pengumpulan menggunakan Azure CLI, jalankan perintah berikut. Ganti tempat penampung untuk ID langganan, grup sumber daya, dan nama sumber daya.

az resource update --ids "/subscriptions/<sub_id>/resourceGroups/<resource_group>/providers/Microsoft.AzureArcData/SqlServerInstances/<resource_name>" --set 'properties.monitoring.enabled=false' --api-version 2023-09-01-preview

Langkah selanjutnya