Bagikan melalui


Membuat pemberitahuan peristiwa WMI

Berlaku untuk: SQL Server Azure SQL Managed Instance

Penting

Pada Azure SQL Managed Instance, sebagian besar, tetapi tidak semua fitur SQL Server Agent saat ini didukung. Lihat Perbedaan T-SQL Azure SQL Managed Instance dari SQL Server untuk detailnya.

Artikel ini menjelaskan cara pemberitahuan SQL Server Agent yang dimunculkan ketika peristiwa SQL Server tertentu terjadi yang dipantau oleh Penyedia WMI untuk Peristiwa Server di SQL Server dengan menggunakan SQL Server Management Studio atau Transact-SQL.

Untuk informasi tentang penggunaan Penyedia WMI untuk memantau peristiwa SQL Server, lihat Penyedia WMI untuk Kelas dan Properti Peristiwa Server. Untuk informasi tentang izin yang diperlukan untuk menerima pemberitahuan pemberitahuan peristiwa WMI, lihat Memilih Akun untuk Layanan Agen SQL Server. Untuk informasi selengkapnya tentang WQL, lihat Menggunakan WQL dengan Penyedia WMI untuk Peristiwa Server.

Pembatasan dan batasan

  • SQL Server Management Studio menyediakan cara grafis yang mudah untuk mengelola seluruh sistem peringatan dan merupakan cara yang disarankan untuk mengonfigurasi infrastruktur pemberitahuan.

  • Peristiwa yang dihasilkan dengan xp_logevent terjadi dalam master database. Oleh karena itu, xp_logevent tidak memicu pemberitahuan kecuali @database_name untuk pemberitahuan adalah 'master' atau NULL.

  • Hanya namespace WMI di komputer yang menjalankan SQL Server Agent yang didukung.

Izin

Secara default, hanya anggota peran server tetap sysadmin yang dapat menjalankan sp_add_alert.

Menggunakan SQL Server Management Studio

  1. Di Object Explorer, pilih tanda plus untuk memperluas server tempat Anda ingin membuat pemberitahuan peristiwa WMI.

  2. Pilih tanda plus untuk memperluas SQL Server Agent.

  3. Klik kanan Pemberitahuan dan pilih Pemberitahuan Baru.

  4. Dalam kotak dialog Pemberitahuan Baru, dalam kotak Nama , masukkan nama untuk pemberitahuan ini.

  5. Centang kotak centang Aktifkan untuk mengaktifkan pemberitahuan yang akan dijalankan. Secara default, Aktifkan dicentang.

  6. Di daftar Jenis, pilih pemberitahuan peristiwa WMI.

  7. Di bawah definisi pemberitahuan peristiwa WMI, dalam kotak Namespace layanan, tentukan namespace layanan WMI untuk pernyataan WMI Query Language (WQL) yang mengidentifikasi peristiwa WMI mana yang akan memicu pemberitahuan ini.

  8. Dalam kotak Kueri , tentukan pernyataan WQL yang mengidentifikasi peristiwa yang ditanggapi pemberitahuan ini.

  9. Pilih OK.

Menggunakan Transact-SQL

  1. Di Object Explorer, sambungkan ke instans Mesin Database.

  2. Pada bilah Standar, pilih Kueri Baru.

  3. Salin dan tempel contoh berikut ke dalam jendela kueri dan pilih Jalankan.

    USE msdb;
    GO
    
    EXEC dbo.sp_add_alert @name = N'Test Alert 2',
        @message_id = 54001,
        @notification_message = N'Error 54001 has occurred on the Sales.SalesOrderDetail table on the AdventureWorks2022 database.',
        @wmi_namespace = '\.\root\Microsoft\SqlServer\ServerEvents',
        @wmi_query = N'SELECT * FROM ALTER_TABLE
    WHERE DatabaseName = ''AdventureWorks2022'' AND SchemaName = ''Sales''
    AND ObjectType=''Table'' AND ObjectName = ''SalesOrderDetail''';
    GO
    

Langkah berikutnya