Мой веб-сайт успешно работает на PHP-FPM с NGINX на Debian. Для NGINX период тайм-аута установлен на 300 секунд. Этого достаточно для большинства страниц, но некоторые скрипты застревают. Я не могу воспроизвести проблему при тестировании, поэтому хотел бы знать, где застрял скрипт. Может ли PHP-FPM сообщить номер последней строки, когда истечет время ожидания?
Можно включить медленный журнал php-fpm. Если запрос занимает больше настраиваемого времени, php-fpm будет выгружать трассу стека в лог-файл.
Пример конфигурации, который входит в конфигурационный файл пула php-fpm:
slowlog = /var/log/php5/slow.log
request_slowlog_timeout = 5s
В этом случае, любой запрос, занимающий более 5 секунд времени настенных часов, будет выгружен в стек в /var/log/php5/slow.log
.
Обратите внимание, что запрос будет продолжать выполняться .
.