Mematikan error log PHP

Ini sebenarnya kasus lama yang saya alami dalam mengelola salah satu VPS milik klien. Jadi secara default kalau dalam proses eksekusi kode – kode PHP terjadi masalah baik akhirnya gagal atau tetap dapat dilanjutkan tapi dengan catatan maka semuanya akan dicatat dalam file error_log. Apabila terlalu parah maka bisa sangat besar sekali ukuran filenya dalam waktu yang relatif cepat. Rekor yang saya lihat bisa 2GB hanya dalam 1 bulan. 😥

Berikut contoh isi catatan kesalahan PHP yang dibuat secara otomatis:

[07-Oct-2016 06:31:55 Asia/Jakarta] PHP Deprecated:  Function eregi_replace() is deprecated in /home/nama_domain/public_html/config/fungsi_autolink.php on line 8
[07-Oct-2016 06:31:55 Asia/Jakarta] PHP Notice:  Use of undefined constant tgl - assumed 'tgl' in /home/nama_domain/public_html/templates/nama_situs/comments.php on line 21

Aslinya banyak sekali isinya tapi cuma variasi dari kedua jenis error diatas. Dan yang saya simpulkan itu kode PHP yang digunakan adalah sudah kuno dan perlu diupdate.

Masalahnya klien saya enggan memperbaiki hal tersebut karena memang situsnya dapat digunakan secara normal secara front-end. Repotnya ya kita – kita ini yang mengurus back-endnya. Haha. 😀 Tidak bisa maksa klien sih.

Akhirnya saya putuskan karena log yang dibuat cuma mengganggu saja dan menuh – menuhin disk space server untuk menonaktifkan pembuatannya. Solusinya kita perlu edit php.ini dan kemudian tambahkan kode dibawah.

error_reporting = off

Atau alternatifnya:

error_reporting = E_ALL & ~E_DEPRECATED

Setelah itu restart proses PHPnya. Ini akan mematikan semua jenis pencatatan error.

Misal anda tidak memiliki akses ke konfigurasi PHP dan ini menggunakan Apache maka bisa memakai file .htaccess, tinggal sisipkan kode berikut.

php_flag log_errors Off

Selesai. Oh ya, ini klien yang sama untuk masalah yang mirip sebelumnya tapi pada Apache.

Saya sarankan kalau tidak separah yang saya alami maka biarkan saja fitur ini karena akan sangat membantu dalam diagnosa masalah yang terjadi dalam eksekusi script PHP.

4 Comments

    1. Tergantung settingnya mbak, ada di php.ini. Tapi yang saya temukan defaultnya ada di direktori /var/log/ atau pernah juga di dalam public_html virtual hostingnya.

      Cara paling akurat pakai ini melacaknya: php --info | grep error

Tinggalkan Balasan ke shafira Batalkan balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *