Monitoring SQL Server Errors – Sebagai salah satu database berbasis sql yang banyak digunakan, sql server memiliki fitur dan mekanisme pencatatan error yang cukup baik. Penting bagi kita sebagai pengguna (khususnya untuk seorang database administrator) untuk dapat mengoperasikan dan memahami error atau exception yang biasa muncul pada sql server. Berikut ini saya akan mencoba berbagi pengalaman saya bagaimana cara monitoring sql server errors dan memahami pencatatan log serta mengindentifikasi pesan error yang biasa dijumpai.
Pada artikel ini, kita akan membahas tiga hal yaitu :
1. Mendefinisikan error.
2. Memahami tingkatan error.
3. Menkonfigurasi sql server error log.
BACA JUGA : Analisa menggunakan SQL Server profiler
Mendefinisikan sql server error
Pada dasarnya, error pada sql server bisa kita definisikan mejadi beberapa objek, untuk detailnya bisa dilihat pada table dibawah ini :
Properti | Deskripsi |
Error Number | Nomor unik yang digunakan untuk mengidentifikasi error. |
Error Message | Penjelasan detail dari error atau exception yang kita terima. |
Severity | Mendeskripsikan seberapa fatal error yang diterima. |
State | Mendiskrispkan kondisi error yang diterima. |
Procedure Name | Nama dari store procedure yang ditrigger ketika error diterima. |
Line Number | Menjelaskan secara detail, error yang diterima ada pada baris keberapa. |
Error number merupakan point penting yang biasanya digunakan untuk mencari informasi detail terkait error yang diterima secara online (copy paste di google biasanya langsung muncul penjelasan detail lengkap dengan solusinya).
Memahami tingkatan error sql server
Tingkatan error pada sql server dibedakan dalam beberapa range, untuk tingkatan error yang rendah biasanya hanya berupa pesan informasi saja, berikut ini adalah penjabarannya.
Nilai 0 sampai 10
Nilai dari 0 sampai dengan 10 biasanya hanya berupa informasi saja, dimana terkadang query yang dijalankan tetap dapat dieksekusi namun selain hasil dari query tersebut, ditampilkan juga pesan informasi yang ada pada tabulasi Messages (disebelah tabulasi Results).
Nilai 11 sampai dengan 16
Nilai ini biasanya berisi error yang dapat diperbaiki oleh user, seperti objek yang tidak ditemukan (nilai 11), deadlock (nilai 13), permission denied (nilai 14) dan kesalahan pada syntax (nilai 15).
Nilai 17 sampai 19
Nilai ini biasanya mengindikasikan error yang tidak bisa diperbaiki oleh user, seperti contohnya nilai 17 yang mana mengindikasikan penuhnya penggunaan memory atau disk space.
Nilai 19 ke atas
Nilai ini mengindikasikan error yang sangat serius, biasanya error ada pada kerusakan hardware atau sql server nya itu sendiri.
Konfigurasi dan monitoring sql server log
Secara default, biasanya error log dari sql server disimpan dalam direkory File\Microsoft SQL Server\MSSQL10_50.<instance>\MSSQL\Log\ERRORLOG. Semua error yang terjadi pada sql server, dicatat dalam file ERRORLOG, file ERRORLOG bisa dibuka menggunakan text editor atau dengan log viewer bawaan pada sql server management studio.
File cycles pada log di sql server secara default di reset setiap kali instance di restart. Namun ada kala nya kita ingin menghentikan pencatatan dan memulai sesi yang baru (biasanya karena ukuran file log yang sekarang sudah terlalu besar), untuk melakukan hal tersebut, kita bisa menggunakan store procedure sp_cycle_errorlog, yang mana dengan menggunakan SP ini maka kita akan menutup sesi pencatatan log yang sedang berjalan dan memulai yang baru. Cara menggunakannya cukup mudah :
EXEC sys.sp_cycle_errorlog;
Penutup
Demikianlah pembahasan kita tentang monitoring sql server error log, semoga artikel ini bisa bermanfaat, terima kasih.