Profiler berfungsi untuk menampilkan beberapa informasi yang diperlukan dalam pengembangan dan debugging aplikasi.
Dengan profiler kita bisa melihat:
- Waktu yang dibutuhkan untuk eksekusi controller
- Query apa saja yang dieksekusi
- Kecepatan ekekusi query
- Data yang terkirim
- dan sebagainya.
Informasi ini sangat berguna ketika kita membangun aplikasi dengan CodeIgniter.
Mengaktifkan Profiler CodeIgniter
Cara mengaktifkan Profiler di CodeIgniter sangatlah mudah, cukup dengan menjalankan fungsi ini di controller.
$this->output->enable_profiler(TRUE);
Maka kita akan mendapatkan informasi seperti berikut ini:
Kemudian, agar Profiler aktif di setiap method atau fungsi, letakan kode tersebut di dalam konstruktor:
function __construct(){
parent::construct();
// untuk debugging
$this->output->enable_profiler(TRUE);
}
Menonaktifkan Profiler CodeIgniter
Cara menonaktifkannya, kita bisa menghapus fungsi tersebut atau mengubah parameternya menjadi false.
$this->output->enable_profiler(FALSE);
Tapi nanti masalahnya, saat kita mau deploy ke server…
…kita harus mengubah setiap fungsi profiler menjadi FALSE
.
Hal ini tidak efektif.
Lalu bagaimana solusinya?
Solusinya kita bisa memanfaatkan variabel ENVIRONTMENT
.
$this->output->enable_profiler(ENVIRONMENT == 'development');
Jadi jika nilai variabel ENVIRONTMENT
adalah development
(localhost),
maka dia akan menghasilkan nilai TRUE
.
Tapi kalau nilai variabel ENVIRONTMENT
adalah production
, maka akan menghasilkan
nilai FALSE
.
Kita bisa membuat variabel ENVIRONTMENT
di dalam index.php
:
switch($_SERVER["HTTP_HOST"]){
case "localhost":
define('ENVIRONMENT', 'development');
break;
default:
define('ENVIRONMENT', 'production');
break;
}