1

php-fpm 访问日志请求时间和 xdebug 时间不匹配。

为什么 xdebug 分析显示 100ms 的请求和 php-fpm 访问日志显示 700ms+ 7x 甚至更多的差异?

xdebug 是否在途中丢失/跳过了某些东西,或者 fpm 在实际的 php 处理之间做些什么?

Xdebug 日志记录自动加载/包含/需要计时?数据库连接等?

有没有办法更深入地了解 php-fpm 登录 access.log 的时间?

4

1 回答 1

1

我怀疑 php-fpm 记录了在处理结束时设置/拆除实际 php 文件加载和清理所需的时间。Xdebug 只能在调用设置后变得“自我意识”,并在 php 执行完成后 php-fpm 开始清理时退出。我认为。我在没有 php-fpm(来自扩展的 apache 日志)的情况下观察到同样的情况。

来自阿帕奇:

 192.168.1.54 - - [19/Aug/2016:10:35:17 -0400] "POST /idm/feed/do.php HTTP/1.1" 200 2186 0/128868 I:252 O:2434

从php进程:

2016-08-19T10:35:17-04:00 -api.idm.feed.Servlet          DEBUG /idm/feed[detail] processed in 12.8 ms. , 3 MB

同样的电话!阿帕奇 128 毫秒,PHP 12.8 毫秒。

如果您使用的是 apache,请加载额外的模块并使用此日志格式来获得端到端时间和 IO,如上:

加载 :

LoadModule log_config_module libexec/mod_log_config.so

日志格式:

LogFormat "%h %l %u %t \"%r\" %>s %b %T/%D I:%I O:%O"  common
于 2016-08-19T14:49:46.327 回答