Страница состояния
На этой странице представлена информация о настройке и содержании страницы состояния менеджера процессов FPM.
Смотрите также описание функции fpm_get_status.
Настройка
Страницу состояния FPM включают установкой параметра конфигурации
pm.status_path в конфигурации пула FPM.
В целях безопасности страницу состояния FPM ограничивают внутренними запросами
или известными IP-адресами клиентов, поскольку страница показывает URL-адрес запроса и информацию о доступных ресурсах.
От конфигурации веб-сервера зависит, нужно ли в настройках сервера
разрешать запросы непосредственно к этому пути, минуя любые PHP-скрипты.
Пример конфигурации для сервера Apache с менеджером процессов FPM, слушающим на UDS,
и директивой pm.status_path
с установленным значением /fpm-status будет выглядеть следующим образом:
Order Allow,Deny
Allow from 127.0.0.1
ProxyPass "unix:/var/run/php-fpm.sock|fcgi://localhost/fpm-status"
]]>
После перезагрузки или перезапуска менеджера FPM и веб-сервера страница состояния будет доступна из браузера
(при условии, что запрос поступает с разрешённого IP-адреса, если было настроено ограничение IP-адресов).
Параметры запроса
Формат вывода страницы состояния изменяют путём указания одного из следующих параметров запроса:
htmljsonopenmetricsxml
Дополнительная информация также возвращается с параметром запроса full.
Примеры URL-адресов страниц состояния:
https://localhost/fpm-status —
Краткий вывод в текстовом формате по умолчанию
https://localhost/fpm-status?full —
Полный вывод в текстовом формате по умолчанию
https://localhost/fpm-status?json —
Краткий вывод в формате JSON
https://localhost/fpm-status?html&full —
Полный вывод в формате HTML
Отображаемая информация
В данных вывода в форматах JSON и XML значения даты и времени выводятся в формате метки времени UNIX,
иначе они выводятся в формате, который даёт следующий пример даты:
"03/Jun/2021:07:21:46 +0100".
Основная информация — каждый раз отображается на странице состоянияПараметрОписаниеpoolИмя пула процессов FPM.proccess manager
Тип менеджера процесса — static (статический), dynamic (динамический) или ondemand (по требованию).
start timeДата и время последнего запуска пула процессов.start sinceВремя в секундах с момента последнего запуска пула процессов.accepted connОбщее количество принятых соединений.listen queueКоличество запросов (backlog), ожидающих свободного процесса.max listen queueМаксимальное количество запросов в очереди на прослушивание в любой момент времени.listen queue lenМаксимально допустимый размер очереди прослушивания.idle processesКоличество процессов, которые в настоящее время простаивают (ожидают запросов).active processesКоличество процессов, которые в настоящее время обрабатывают запросы.total processesТекущее общее количество процессов.max active processesМаксимальное количество одновременно активных процессов.max children reached
Было ли достигнуто максимальное количество процессов? Если да, то отображаемое значение
будет больше или равно 1, иначе значение будет равно 0.
slow requests
Общее количество запросов, которые достигли настроенного
request_slowlog_timeout.
Информация о каждом процессе — отображается только в режиме вывода fullПараметрОписаниеpidСистемный PID-идентификатор процесса.stateСостояние процесса — Idle, Running, …start timeДата и время начала процесса.start sinceКоличество секунд с момента начала процесса.requestsОбщее количество обслуженных запросов.request durationОбщее время в микросекундах, затраченное на обслуживание последнего запроса.request methodМетод HTTP последнего обслуженного запроса.request uri
URI-идентификатор последнего обслуженного запроса (после обработки веб-сервером он всегда может быть
равен /index.php, если вы используете шаблонный редирект фронт-контроллера).
content lengthДлина тела запроса, в байтах, последнего запроса.userHTTP-пользователь (PHP_AUTH_USER) последнего запроса.script
Полный путь к скрипту, который выполнил последний запрос. Это будет
'-', если не применимо (например, запросы страницы состояния).
last request cpu
Процент занятого центральным процессором времени при выполнении последнего запроса.
Это значение будет равно 0, если процесс не в состоянии Idle,
потому что вычисление проводится после окончания обработки запроса.
Значение может превысить 100 %, потому что метрика покажет,
какой процент от общего времени работы процессора
занял последний запрос, —
в расчёте менеджер учтёт процессы на каждом ядре,
тогда как 100 % — это значение только для одного ядра.
last request memory
Максимальный объем памяти, который потребил последний запрос.
Это значение будет равно 0, если процесс не простаивает, поскольку
вычисление проводится после окончания обработки запроса.
Все значения специфичны для пула и сбрасываются при перезапуске менеджера FPM.
Данные вывода в формате стандарта OpenMetrics используют различные типы параметров,
чтобы лучше соответствовать формату OpenMetrics.
Параметры и описания их значений включаются в данные вывода формата OpenMetrics.
&reftitle.changelog;
&Version;&Description;8.1.0Добавлен формат OpenMetrics.