日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > php >内容正文

php

php-fpm中启用慢日志配置

發(fā)布時間:2025/6/15 php 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php-fpm中启用慢日志配置 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

轉(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是這樣描述的:

;?The?timeout?for?serving?a?single?request?after?which?a?PHP?backtrace?will?be ;?dumped?to?the?'slowlog'?file.?A?value?of?'0s'?means?'off'. ;?Available?units:?s(econds)(default),?m(inutes),?h(ours),?or?d(ays) ;?Default?Value:?0 ;?request_slowlog_timeout?=?0
  • 當(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í)行時間過長。

[21-Nov-2013?14:30:38]?[pool?www]?pid?11877 script_filename?=?/usr/local/nginx/html/www.quancha.cn/www/fyzb.php [0xb70fb88c]?file_get_contents()?/usr/local/nginx/html/www.quancha.cn/www/fyzb.php:2 [21-Nov-2013?14:15:23]?ERROR:?[pool?www]?'slowlog'?must?be?specified?for?use?with?'request_slowlog_timeout'
  • request_slowlog_timeout 和 slowlog 需要同時設(shè)置,開啟 request_slowlog_timeout 的同時需要開啟 slowlog

[21-Nov-2013?14:16:27]?ERROR:?Unable?to?create?or?open?slowlog(/usr/local/php/log/www.log.slow):? No?such?file?or?directory?(2)
  • 慢日志路徑需要手動創(chuàng)建,具體開啟php-fpm慢日志步驟:

cd?/usr/local/phpvi?etc/php-fpm.conf 去掉request_slowlog_timeout?、slowlog的前綴分號';',設(shè)置request_slowlog_timeout?=5; :wq 保存退出 創(chuàng)建慢日志目錄 mkdir?log 重啟php-fpm kill?-INT?`cat?var/run/php-fpm.pid sbin/php-fpm
  • 【實際操作】

1.?cd?/usr/local/php5/ 2.?sed?-i.$(date?+%F)?'/;slowlog/s/;slowlog/slowlog/g'?etc/php-fpm.conf 3.?sed?-i?'/;request_slowlog_timeout?=?0/s/;request_slowlog_timeout?=?0/request_slowlog_timeout?=?5/g'?etc/php-fpm.conf 4.?mkdir?log 5.?測試配置文件#?/usr/local/php5/sbin/php-fpm?-t[29-Sep-2015?18:58:35]?NOTICE:?configuration?file?/usr/local/php5/etc/php-fpm.conf?tes???t?is?successful 6.?平滑重啟#/etc/init.d/php-fpm?reloadReload?service?php-fpm??done 7.?查看日志[root@movie?php5]#?ll?log/total?0-rw-------?1?root?root?0?Sep?29?18:35?www.log.slow


  • 其中慢查詢?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)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。