Bagikan melalui


Peringatan

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 dari SQL Server untuk detailnya.

Peristiwa dihasilkan oleh SQL Server dan dimasukkan ke dalam log aplikasi Microsoft Windows. SQL Server Agent membaca log aplikasi dan membandingkan peristiwa yang ditulis di sana dengan pemberitahuan yang telah 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 pemberitahuan.

  • Kondisi peristiwa atau performa yang memicu pemberitahuan.

  • Tindakan yang diambil Agen SQL Server sebagai respons terhadap peristiwa atau kondisi performa.

Penamaan Pemberitahuan

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

Memilih Jenis Peristiwa

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

  • Peristiwa SQL Server

  • Kondisi performa SQL Server

  • Peristiwa WMI

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

Menentukan Peristiwa 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 ketika 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 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 ketika 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.

Memilih 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) dari atribut yang akan dipantau.

  • Pemberitahuan 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 ketika ruang kosong di tempdb berada di bawah 1000 KB. Untuk mengatur ini, Anda akan memilih penghitung Ruang kosong di tempdb (KB), berada di bawah, dan Nilai 1000.

    Catatan

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

    Catatan

    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.

Memilih 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 Layanan

    SQL Server Agent mendaftar sebagai klien WMI ke namespace layanan WMI yang disediakan untuk mengkueri peristiwa.

  • Kueri

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

Berikut ini adalah tautan ke tugas umum:

Untuk membuat pemberitahuan berdasarkan nomor pesan

Untuk membuat pemberitahuan berdasarkan tingkat keparahan

Untuk membuat pemberitahuan berdasarkan peristiwa WMI

Untuk menentukan respons terhadap pemberitahuan

Untuk membuat pesan kesalahan peristiwa yang ditentukan pengguna

Untuk mengubah pesan kesalahan peristiwa yang ditentukan pengguna

Untuk menghapus pesan kesalahan peristiwa yang ditentukan pengguna

Untuk menonaktifkan atau mengaktifkan kembali pemberitahuan

Lihat Juga

sp_update_alert (T-SQL)