您的位置:首页 > 编程语言 > PHP开发

日志-php-fpm慢日志查询

2019-08-13 13:25 489 查看
原文链接:https://www.geek-share.com/detail/2698335790.html

项目用php开发,在生产运行的过程中,应该一段时间监测下php脚本运行状态,哪些php进程速度太慢,有哪些错误日志。
问:如何来查看检测比较慢的php脚本呢?
答:查看php-fpm慢日志。

1.先查找到配置文件存放地址

find / -name php-fpm.conf


vi /usr/servers/php/etc/php-fpm.conf

打开看看你的慢日志是否开启,或者开启的慢日志存放在哪里。
对应的地址都换成你自己的即可。

2.如果没有开启慢日志查询,先开启

默认的 request_slowlog_timeout 是0,php的慢脚本日志是关闭的,因此设置为大于0的n,表示执行时间超过n的脚本将记录进入slowlog里。
然后监测到网站存在问题的时候查看下slowlog即可发现慢脚本,对脚本进行检查处理即可。

request_slowlog_timeout 和 slowlog需要同时设置,
开启request_slowlog_timeout的同时需要开启 slowlog,
慢日志路径需要手动创建

去掉request_slowlog_timeout 、slowlog的前缀分号';'
设置request_slowlog_timeout =1;
:wq    //保存退出创建慢日志目录
mkdir -p /var/logdata/php-fpm/php-fpm-slowlog.log
killall php-fpm/usr/servers/php/sbin/php-fpm //重启php-fpm

3.找到慢日志存放地址

4.观察慢日志信息

tailf /var/logdata/php-fpm/php-fpm-slowlog.log


开启后,如果有脚本执行超过指定的时间,就会在指定的日志文件中写入类似如下的信息:

[19-Dec-2016 16:54:49] [pool www] pid 18575
script_filename = /home/web/htdocs/sandbox_canglong/test/tt.php
[0x0000000003a00dc8] curl_exec() /home/web/htdocs/sandbox_canglong/test/tt.php:2
[0x0000000003a00cd0] exfilter_curl_get() /home/web/htdocs/sandbox_canglong/test/tt.php:6

日志说明:
script_filename 是入口文件
curl_exec() : 说明是执行这个方法的时候超过执行时间的。
exfilter_curl_get() :说明调用curl_exec()的方法是exfilter_curl_get() 。
每行冒号后面的数字是行号。

开启后,在错误日志文件中也有相关记录。如下:

[19-Dec-2016 15:55:37] WARNING: [pool www] child 18575, script '/home/web/htdocs/sandbox_canglong/test/tt.php' (request: "GET /test/tt.php") executing too slow (1.006222 sec), logging
[19-Dec-2016 15:55:37] NOTICE: child 18575 stopped for tracing
[19-Dec-2016 15:55:37] NOTICE: about to trace 18575
[19-Dec-2016 15:55:37] NOTICE: finished trace of 18575

系统日志:记录系统相关信息:https://www.geek-share.com/detail/2698335625.html
apache访问日志与错误日志:https://www.geek-share.com/detail/2698335648.html
nginx访问日志与错误日志:https://www.geek-share.com/detail/2698335690.html
php-fpm慢日志:检测执行较慢的PHP脚本:https://www.geek-share.com/detail/2698335790.html
php错误日志:检测php运行时或用户自记录错误日志:https://www.geek-share.com/detail/2698335887.html
mysql慢日志:记录mysql服务器中影响性能的SQL:https://www.geek-share.com/detail/2698335790.html

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: