让 PHP-FPM 在超时时报告脚本的当前行号

让 PHP-FPM 在超时时报告脚本的当前行号

我的网站在 Debian 上的 PHP-FPM 和 NGINX 上成功运行。NGINX 的超时时间设置为 300 秒。这对于大多数页面来说已经足够了,但有些脚本会卡住。我无法在测试中重现该问题,所以我想知道脚本卡在哪里。当发生超时时,PHP-FPM 可以报告最后一行的行号吗?

答案1

您可以启用 php-fpm 慢速日志。如果请求耗时超过可配置的时间量,php-fpm 会将堆栈跟踪转储到日志文件中。

示例配置,进入您的 php-fpm 池配置文件:

slowlog = /var/log/php5/slow.log
request_slowlog_timeout = 5s

在这种情况下,任何耗时超过 5 秒的挂钟时间的请求都会将堆栈转储到 中/var/log/php5/slow.log

请注意请求将继续运行

相关内容