Teknik Debugging di Laravel
Debugging adalah proses mencari dan memperbaiki kesalahan (bug) pada aplikasi. Di Laravel, proses debugging dibuat cukup mudah karena sudah disediakan berbagai fitur bawaan yang sangat membantu developer.
1. Mengaktifkan Mode Debug
Langkah paling dasar dalam debugging Laravel adalah mengaktifkan mode debug.
Mode ini bisa diatur di file .env:
APP_DEBUG=true
Jika APP_DEBUG bernilai true, Laravel akan menampilkan pesan error lengkap seperti:
- Pesan kesalahan
- Lokasi file
- Nomor baris kode
⚠️ Catatan: Jangan aktifkan debug di server production karena bisa membocorkan informasi sensitif.
2. Menggunakan dd() dan dump()
Laravel menyediakan helper yang sangat sering dipakai:
-
dd()(dump and die) Digunakan untuk menampilkan isi variabel lalu menghentikan program.dd($data); -
dump()Menampilkan isi variabel tanpa menghentikan eksekusi program.dump($data);
Ini sangat berguna untuk mengecek data dari database, request, atau proses tertentu.
3. Melihat Error di Log
Jika aplikasi error tapi tidak muncul di layar, Laravel biasanya menyimpannya di file log.
Lokasi file log:
storage/logs/laravel.log
Log ini berisi:
- Error aplikasi
- Query error
- Exception yang terjadi
Teknik ini sering digunakan saat debugging di server.
4. Debugging Request dan Validasi
Untuk mengecek data yang dikirim dari form atau API, kita bisa gunakan:
$request->all();
Atau langsung:
dd($request->all());
Ini membantu memastikan data yang dikirim sudah sesuai dengan yang diharapkan.
5. Debug Query Database
Kadang error terjadi karena query database. Laravel menyediakan cara untuk melihat query yang dijalankan:
\DB::enableQueryLog();
// jalankan query
dd(\DB::getQueryLog());
Atau lebih sederhana dengan:
dd($model->toSql());
6. Menggunakan Laravel Debugbar (Opsional)
Laravel Debugbar adalah package tambahan yang menampilkan:
- Query database
- Request & response
- Waktu eksekusi
- Memory usage
Package ini sangat membantu untuk debugging saat development.
Kesimpulan
Debugging di Laravel relatif mudah karena:
- Error message jelas
- Helper debugging lengkap
- Log tersimpan rapi
Dengan memahami teknik debugging dasar seperti dd(), log, dan debug mode, developer dapat lebih cepat menemukan dan memperbaiki bug dalam aplikasi Laravel.