Bagikan melalui


Pemberitahuan SQL Server Agent

Berlaku untuk:SQL Server

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 dibandingkan dengan SQL Server atau batasan pada pekerjaan Agen SQL di SQL Managed Instance untuk detail lebih lanjut.

Peristiwa yang dihasilkan oleh SQL Server dimasukkan ke dalam log aplikasi Windows. SQL Server Agent membaca log aplikasi dan membandingkan peristiwa yang ditulis di sana dengan pemberitahuan yang Anda tentukan.

Ketika SQL Server Agent menemukan kecocokan, SQL Server Agent akan mengaktifkan pemberitahuan, yang merupakan respons otomatis terhadap suatu peristiwa. Selain memantau peristiwa SQL Server, SQL Server Agent juga dapat memantau kondisi performa dan peristiwa Windows Management Instrumentation (WMI).

Untuk menentukan pemberitahuan, Anda menentukan:

  • Nama peringatan.
  • Kondisi peristiwa atau performa yang memicu pemberitahuan.
  • Tindakan yang diambil Agen SQL Server sebagai respons terhadap peristiwa atau kondisi performa.

Beri nama pemberitahuan

Setiap pemberitahuan harus memiliki nama. Nama pemberitahuan harus unik dalam instans SQL Server dan tidak boleh lebih dari 128 karakter.

Pilih jenis peristiwa

Pemberitahuan merespons peristiwa jenis tertentu. Pemberitahuan merespons jenis peristiwa berikut:

  • Peristiwa SQL Server
  • Kondisi performa SQL Server
  • Peristiwa Instrumentasi Manajemen Windows (WMI)

Jenis peristiwa menentukan parameter yang Anda gunakan untuk menentukan peristiwa yang tepat.

Tentukan kejadian SQL Server

Anda dapat menentukan pemberitahuan yang akan terjadi sebagai respons terhadap satu atau beberapa peristiwa. Gunakan parameter berikut untuk menentukan peristiwa yang memicu pemberitahuan:

  • Nomor kesalahan: SQL Server Agent mengaktifkan pemberitahuan saat kesalahan tertentu terjadi. Misalnya, Anda dapat menentukan nomor kesalahan 2571 untuk merespons upaya yang tidak sah untuk memanggil Perintah Konsol Database (DBCC).

  • Tingkat keparahan: SQL Server Agent mengaktifkan pemberitahuan ketika terjadi kesalahan tingkat keparahan tertentu. Misalnya, Anda dapat menentukan tingkat keparahan 15 untuk merespons kesalahan sintaks dalam pernyataan Transact-SQL.

  • Database: SQL Server Agent mengaktifkan pemberitahuan hanya ketika peristiwa terjadi dalam database tertentu. Opsi ini berlaku selain nomor kesalahan atau tingkat keparahan. Misalnya, jika instans SQL Server berisi satu database yang digunakan untuk produksi, dan satu database yang digunakan untuk pelaporan, Anda dapat menentukan pemberitahuan yang merespons kesalahan sintaksis dalam database produksi saja.

  • Teks peristiwa: SQL Server Agent mengaktifkan pemberitahuan saat peristiwa yang ditentukan berisi string teks tertentu dalam pesan peristiwa. Misalnya, Anda mungkin menentukan pemberitahuan yang merespons pesan yang berisi nama tabel tertentu atau batasan tertentu.

Pilih kondisi performa

Anda dapat menentukan pemberitahuan yang akan terjadi sebagai respons terhadap kondisi performa tertentu. Dalam hal ini, Anda menentukan penghitung kinerja untuk dipantau, ambang batas untuk pemberitahuan, dan perilaku yang harus ditampilkan penghitung jika pemberitahuan terjadi. Untuk mengatur kondisi performa, Anda harus menentukan item berikut pada halaman Umum Agen SQL Server dari kotak dialog Pemberitahuan Baru atau Properti Pemberitahuan :

  • Objek: Objek adalah area performa yang akan dipantau.

  • Penghitung: Penghitung adalah atribut area yang akan dipantau.

  • Instans: Instans SQL Server menentukan instans tertentu (jika ada) atribut yang akan dipantau.

  • Peringatan jika penghitung dan Nilai

    Ambang batas untuk pemberitahuan dan perilaku yang menghasilkan pemberitahuan. Ambang batas adalah angka. Perilaku adalah salah satu dari yang berikut: berada di bawah ini, menjadi sama dengan, atau naik di atas angka yang ditentukan untuk Nilai. Nilai adalah angka yang menjelaskan penghitung kondisi performa. Misalnya, untuk mengatur pemberitahuan yang akan terjadi untuk objek performa SQLServer:Locks saat Waktu Tunggu Kunci melebihi 30 menit, Anda akan memilih naik di atas dan menentukan 30 sebagai nilai.

    Sebagai contoh lain, Anda dapat menentukan bahwa pemberitahuan terjadi untuk objek performa SQLServer:Transactions saat ruang kosong di tempdb bawah 1.000 KB. Untuk mengatur nilai ini, buka penghitung Ruang kosong di tempdb (KB), pilih jatuh di bawah, dan tentukan Nilai sebesar 1000.

    Data performa diambil sampelnya secara berkala, yang dapat menyebabkan penundaan kecil (beberapa detik) antara ambang batas yang tercapai dan terjadinya pemberitahuan performa.

    Variabel log Peristiwa yang menyimpan nama server dibatasi hingga 32 karakter. Oleh karena itu, jika ukuran gabungan nama host dan nama instans Anda lebih besar dari 32 karakter, Anda mungkin mendapatkan kesalahan berikut:

    Warning,[466] Failed to copy server name LONGNAMESQLSERV\LONGINSTANCENAME while generating performance counter alerts.
    

Pilih peristiwa WMI

Anda dapat menentukan bahwa pemberitahuan terjadi sebagai respons terhadap peristiwa WMI tertentu. Untuk memilih peristiwa WMI, Anda harus menentukan yang berikut ini di halaman Umum Agen SQL Server dari kotak dialog Pemberitahuan Baru atau Properti Pemberitahuan :

  • Namespace: SQL Server Agent mendaftar sebagai klien WMI pada namespace WMI yang diberikan untuk melakukan kueri terhadap peristiwa.

  • Kueri: SQL Server Agent menggunakan pernyataan Windows Management Instrumentation Query Language (WQL) yang disediakan untuk mengidentifikasi peristiwa tertentu.

Tindakan SQL Server Management Studio Transact-SQL
Membuat pemberitahuan berdasarkan nomor pesan Membuat Pemberitahuan Menggunakan Nomor Kesalahan sp_add_alert
Membuat pemberitahuan berdasarkan tingkat keparahan Membuat Pemberitahuan Menggunakan Tingkat Keparahan sp_add_alert
Membuat pemberitahuan berdasarkan peristiwa WMI Membuat pemberitahuan peristiwa WMI sp_add_alert
Menentukan respons ke pemberitahuan Tentukan Respons terhadap Pemberitahuan sp_add_notification
Membuat pesan kesalahan peristiwa yang ditentukan pengguna sp_addmessage
Mengubah pesan kesalahan peristiwa yang ditentukan pengguna sp_altermessage
Menghapus pesan kesalahan dari peristiwa yang didefinisikan pengguna sp_dropmessage
Menonaktifkan atau mengaktifkan kembali pemberitahuan Menonaktifkan atau Mengaktifkan Kembali Pemberitahuan sp_update_alert
  • sp_update_alert (Transact-SQL)