在Ubuntu中分析php-fpm的慢日志可以通過以下步驟進行:
首先,確保在php-fpm的配置文件中開啟了慢日志記錄功能。編輯php-fpm的配置文件(通常位于/etc/php/7.x/fpm/pool.d/www.conf,根據你的PHP版本調整路徑和文件名),找到或添加以下配置項:
slowlog = /var/log/phpfpm/www.log
request_slowlog_timeout = 1000
這里將慢日志保存在/var/log/phpfpm/www.log文件中,閾值設置為1000毫秒(1秒)。
保存配置文件后,重啟php-fpm服務以使設置生效:
sudo systemctl restart php7.4-fpm
請根據你的PHP版本替換php7.4-fpm為相應的服務名稱。
使用以下命令實時查看慢日志的內容:
tail -f /var/log/phpfpm/www.log
要停止查看慢日志,按Ctrl+C。
分析慢日志,找出性能瓶頸,可以使用文本編輯器或日志分析工具進行查看。例如,使用awk命令統計每個IP的請求次數和總耗時:
awk '{print $1, NF}' /var/log/phpfpm/www.log | sort | uniq -c | sort -nr
除了手動分析慢日志外,還可以使用性能分析工具,如Xdebug、Blackfire或PHP Profiler,這些工具可以提供更詳細的性能分析報告,幫助進一步優化代碼。
根據分析結果,對代碼進行優化或調整配置以提高性能??赡艿膬灮胧┌▋灮疭QL查詢、合并CSS和JavaScript文件、減少數據庫查詢次數、使用緩存等。
在進行了優化之后,持續監控應用的性能,并定期分析慢日志,以確保優化效果,并及時發現新的性能問題。
通過以上步驟,你可以系統地分析php-fpm的慢日志,并據此優化PHP腳本的性能。