当前位置:首页>

文章详细页

开启php-fpm慢日志

分类:PHP


==========php-fpm的概念:


PHP-FPM是一个PHP FastCGI管理器,是只用于PHP的。相对Spawn-FCGI,PHP-FPM在CPU和内存方面的控制都更胜一筹,而且前者很容易崩溃,必须用crontab进行监控,而PHP-FPM则没有这种烦恼。   

PHP5.3.3已经集成php-fpm了,不再是第三方的包了。PHP-FPM提供了更好的PHP进程管理方式,可以有效控制内存和进程、可以平滑重载PHP配置,比spawn-fcgi具有更多优点,所以被PHP官方收录了。在./configure的时候带 –enable-fpm参数即可开启PHP-FPM。

========== 开启php-fpm慢日志
php-fpm.conf

request_slowlog_timeout =5 表示如果哪个脚本执行时间大于5秒,会记录这个脚本到慢日志文件中
request_slowlog_timeout =0 表示关闭慢日志输出

慢日志文件位置默认在php的安装目录下的log文件夹中,可以通过修改slowlog = log/$pool.log.slow参数来指定。
php-fpm慢日志的例子,慢日志会记录下进程号,脚本名称,具体哪个文件哪行代码的哪个函数执行时间过长。
request_slowlog_timeout 和 slowlog需要同时设置,开启request_slowlog_timeout的同时需要开启 slowlog
慢日志路径需要手动创建 (slowlog)


具体开启步骤如下:

vi php-fpm.conf
将request_slowlog_timeout、slowlog配置解注释;
设置request_slowlog_timeout=5;

:wq 保存退出
在php根目录创建慢查询目录
mkdir log

重启php-fpm
kill -INT `cat /usr/local/php/var/run/php-fpm.pid`
/usr/local/php/sbin/php-fpm &