我遇到了一些问题,客户报告我们的一些网页运行缓慢。这可能出于多种原因,但我想专门记录每个页面的执行时间,而不必在每个 PHP 脚本的页眉和页脚中添加任何内容。有哪些选项?(如果有所不同,我们正在运行 Nginx Web 服务器和 PHP-FPM)
答案1
您可以使用$upstream_response_time
它来log_format
记录 PHP-FPM 在请求上花费的时间。
答案2
或者(另外?),您可以启用 FPM 访问日志并将其配置为存储请求时间和其他数据。
然后,您将能够比较 nginx 和 FPM 报告的时间并查看端点之间是否存在延迟。
看https://www.php.net/manual/en/install.fpm.configuration.php#access-format并特别评论https://www.php.net/manual/en/install.fpm.configuration.php#126422
例子:
access.format = "%R - %u [%t] \"%m %r%Q%q\" %s %f (%{mili}d) %{kilo}M %C%%"
将为您提供与 Apache/nginx 非常相似的日志。