Melacak script PHP yang lambat
Kembali lagi ke pembahasan diagnosa web server, kali ini korbannya adalah PHP-FPM. Fungsinya sudah jelas ya, mesinnya untuk memproses script/kode PHP dan bekerja sama dengan web server, ini bisa Nginx atau Apache atau sejenisnya. Kasus yang dilaporkan kali ini adalah pada halaman website tertentu terasa lambat sekali dibukanya, untuk halaman statis (HTML) tetap cepat tapi PHP tampaknya ada yang bermasalah.
Nah… disini saya mengajarkan saja ada kok caranya agar PHP-FPM mencatat script mana yang lama sekali prosesnya. Pertama kita perlu mengedit konfigurasi PHP-FPM dan menambahkan kode berikut:
request_slowlog_timeout = 10
slowlog = /var/log/php-fpm/slow.$pool.log
Dengan mengaktifkan slowlog
maka proses PHP yang lambat (dan dalam contoh saya setting minimal 10 detik) akan dicatat dalam file lognya. Kita akan mendapatkan informasi script apa saja yang lama mengolah PHP dan akan diperinci dengan tambahan pada kode mana batas waktu prosesnya terlewati.
Dari isi catatan yang didapatkan kita akan lebih tahu masalahnya dimana dan mencari solusinya. Jadi tidak membabibuta asal mengganti setting PHP dan berharap yang terbaik. 😛