【php-fpm】遅い処理を特定する
問題
php-fpm の処理がなんだか重そうなのですが、遅い処理を特定できるでしょうか。
答え
slowlog
遅いリクエストの記録を有効にする。
以下のような設定ファイルに、
/etc/php/8.2/fpm/pool.d/www.conf
/etc/opt/remi/php74/php-fpm.d/www.conf
以下のような設定項目があるので、
slowlog = /var/opt/remi/php74/log/php-fpm/www-slow.log
request_slowlog_timeout = 10s
コメントを外して、設定値を入れて、php-fpmリスタートで、ログが出るようになる。
access log
Webサーバーとは別に、php-fpmのアクセスログが取れる。
処理したphp、処理にかかった時間、PID、CPU使用率などなどがわかる。
slowlogと同じく、以下のような設定ファイルに、
/etc/php/8.2/fpm/pool.d/www.conf
/etc/opt/remi/php74/php-fpm.d/www.conf
以下のような設定項目があるので、
;access.log = log/$pool.access.log ;access.format = "%R - %u %t \"%m %r%Q%q\" %s %f %{milli}d %{kilo}M %C%%"
ファイル名やログに記録したい内容を設定して、php-fpmリスタートで、ログが出るようになる。
コメント