php-fpm中启用慢日志配置
轉(zhuǎn)載自
http://www.hiceon.com/topic/how-to-enable-slow-logging-configuration-via-php-fpm-to-detect-slower-php-script-execution/
php-fpm慢日志slowlog設(shè)置可以讓開發(fā)者很好的查找哪些php進(jìn)程速度過慢而導(dǎo)致的網(wǎng)站問題,讓開發(fā)者方便的找到問題的所在。該方法同樣適用于排查nginx的500、502問題根源,當(dāng)nginx收到如上錯誤碼時,可以確定后端php-fpm解析php出了某種問題,比如,執(zhí)行錯誤,執(zhí)行超時。
php-fpm.conf的配置文件中有一個參數(shù)request_slowlog_timeout是這樣描述的:
當(dāng)request_slowlog_timeout設(shè)為一個具體秒時request_slowlog_timeout =5,表示如果哪個腳本執(zhí)行時間大于5秒,會記錄這個腳本到慢日志文件中。
request_slowlog_timeout =0表示關(guān)閉慢日志輸出。
慢日志文件位置默認(rèn)在php的安裝目錄下的log文件夾中,可以通過修改slowlog = log/$pool.log.slow參數(shù)來指定。php-fpm慢日志的例子,慢日志會記錄下進(jìn)程號,腳本名稱,具體哪個文件哪行代碼的哪個函數(shù)執(zhí)行時間過長。
request_slowlog_timeout 和 slowlog 需要同時設(shè)置,開啟 request_slowlog_timeout 的同時需要開啟 slowlog
慢日志路徑需要手動創(chuàng)建,具體開啟php-fpm慢日志步驟:
【實際操作】
其中慢查詢?nèi)罩镜奈募怯蓅lowlog = log/$pool.log.slow指定的。
? ? ?默認(rèn)文件名為$pool.log.slow,而變量pool可在php-fpm配置文件中指定。
? ?
119 ; Pool Definitions ;
120 ;;;;;;;;;;;;;;;;;;;;
121?
122 ; Multiple pools of child processes may be started with different listening
123 ; ports and different management options. ?The name of the pool will be
124 ; used in logs and stats. There is no limitation on the number of pools which
125 ; FPM can handle. Your system will tell you anyway :)
126?
127 ; Start a new pool named 'www'.
128 ; the variable $pool can we used in any directive and will be replaced by the
129 ; pool name ('www' here)
130 [www]
將130行的的[www]更改為[test],平滑重啟后,即可看到poolname變?yōu)閠est,產(chǎn)生新的日志文件test.log.slow
[root@movie php5]# ll log/
total 0
-rw------- 1 root root 0 Sep 29 19:24 test.log.slow
-rw------- 1 root root 0 Sep 29 18:35 www.log.slow
轉(zhuǎn)載于:https://blog.51cto.com/xoyabc/1699270
總結(jié)
以上是生活随笔為你收集整理的php-fpm中启用慢日志配置的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Servlet RequestDispa
- 下一篇: Android——apk反编译