mirror of
https://github.com/php/doc-ru.git
synced 2026-03-26 00:32:15 +01:00
322 lines
13 KiB
XML
322 lines
13 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
||
<!-- EN-Revision: 2c4f02dcf9781000405646b9b21f9182aea76496 Maintainer: sergey Status: ready -->
|
||
<!-- Reviewed: no -->
|
||
<sect1 xml:id="fpm.status" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||
<title>Страница состояния</title>
|
||
|
||
<para>
|
||
На этой странице представлена информация о настройке и содержании страницы состояния менеджера процессов FPM.
|
||
Смотрите также описание функции <function>fpm_get_status</function>.
|
||
</para>
|
||
|
||
<sect2 xml:id="fpm.status.configuration">
|
||
<title>Настройка</title>
|
||
|
||
<para>
|
||
Страницу состояния FPM включают установкой параметра конфигурации
|
||
<link linkend="pm.status-path">pm.status_path</link> в конфигурации пула FPM.
|
||
</para>
|
||
|
||
<caution>
|
||
<para>
|
||
В целях безопасности страницу состояния FPM ограничивают внутренними запросами
|
||
или известными IP-адресами клиентов, поскольку страница показывает URL-адрес запроса и информацию о доступных ресурсах.
|
||
</para>
|
||
</caution>
|
||
|
||
<para>
|
||
От конфигурации веб-сервера зависит, нужно ли в настройках сервера
|
||
разрешать запросы непосредственно к этому пути, минуя любые PHP-скрипты.
|
||
Пример конфигурации для сервера Apache с менеджером процессов FPM, слушающим на UDS,
|
||
и директивой <literal>pm.status_path</literal>
|
||
с установленным значением <literal>/fpm-status</literal> будет выглядеть следующим образом:
|
||
</para>
|
||
|
||
<informalexample>
|
||
<programlisting role="apache-conf">
|
||
<![CDATA[
|
||
<LocationMatch "/fpm-status">
|
||
Order Allow,Deny
|
||
Allow from 127.0.0.1
|
||
ProxyPass "unix:/var/run/php-fpm.sock|fcgi://localhost/fpm-status"
|
||
</LocationMatch>
|
||
]]>
|
||
</programlisting>
|
||
</informalexample>
|
||
|
||
<para>
|
||
После перезагрузки или перезапуска менеджера FPM и веб-сервера страница состояния будет доступна из браузера
|
||
(при условии, что запрос поступает с разрешённого IP-адреса, если было настроено ограничение IP-адресов).
|
||
</para>
|
||
</sect2>
|
||
|
||
<sect2 xml:id="fpm.status.parameters">
|
||
<title>Параметры запроса</title>
|
||
|
||
<para>
|
||
Формат вывода страницы состояния изменяют путём указания одного из следующих параметров запроса:
|
||
</para>
|
||
|
||
<simplelist>
|
||
<member><literal>html</literal></member>
|
||
<member><literal>json</literal></member>
|
||
<member><literal>openmetrics</literal></member>
|
||
<member><literal>xml</literal></member>
|
||
</simplelist>
|
||
|
||
<para>
|
||
Дополнительная информация также возвращается с параметром запроса <literal>full</literal>.
|
||
</para>
|
||
|
||
<para>
|
||
Примеры URL-адресов страниц состояния:
|
||
</para>
|
||
|
||
<simplelist>
|
||
<member>
|
||
<literal>https://localhost/fpm-status</literal> —
|
||
Краткий вывод в текстовом формате по умолчанию
|
||
</member>
|
||
<member>
|
||
<literal>https://localhost/fpm-status?full</literal> —
|
||
Полный вывод в текстовом формате по умолчанию
|
||
</member>
|
||
<member>
|
||
<literal>https://localhost/fpm-status?json</literal> —
|
||
Краткий вывод в формате JSON
|
||
</member>
|
||
<member>
|
||
<literal>https://localhost/fpm-status?html&full</literal> —
|
||
Полный вывод в формате HTML
|
||
</member>
|
||
</simplelist>
|
||
</sect2>
|
||
|
||
<sect2 xml:id="fpm.status.contents">
|
||
<title>Отображаемая информация</title>
|
||
|
||
<para>
|
||
В данных вывода в форматах JSON и XML значения даты и времени выводятся в формате метки времени UNIX,
|
||
иначе они выводятся в формате, который даёт следующий пример даты:
|
||
<literal>"03/Jun/2021:07:21:46 +0100"</literal>.
|
||
</para>
|
||
|
||
<table>
|
||
<title>Основная информация — каждый раз отображается на странице состояния</title>
|
||
<tgroup cols="2">
|
||
<thead>
|
||
<row>
|
||
<entry>Параметр</entry>
|
||
<entry>Описание</entry>
|
||
</row>
|
||
</thead>
|
||
<tbody>
|
||
<row>
|
||
<entry>pool</entry>
|
||
<entry>Имя пула процессов FPM.</entry>
|
||
</row>
|
||
<row>
|
||
<entry>proccess manager</entry>
|
||
<entry>
|
||
Тип менеджера процесса — static (статический), dynamic (динамический) или ondemand (по требованию).
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry>start time</entry>
|
||
<entry>Дата и время последнего запуска пула процессов.</entry>
|
||
</row>
|
||
<row>
|
||
<entry>start since</entry>
|
||
<entry>Время в секундах с момента последнего запуска пула процессов.</entry>
|
||
</row>
|
||
<row>
|
||
<entry>accepted conn</entry>
|
||
<entry>Общее количество принятых соединений.</entry>
|
||
</row>
|
||
<row>
|
||
<entry>listen queue</entry>
|
||
<entry>Количество запросов (backlog), ожидающих свободного процесса.</entry>
|
||
</row>
|
||
<row>
|
||
<entry>max listen queue</entry>
|
||
<entry>Максимальное количество запросов в очереди на прослушивание в любой момент времени.</entry>
|
||
</row>
|
||
<row>
|
||
<entry>listen queue len</entry>
|
||
<entry>Максимально допустимый размер очереди прослушивания.</entry>
|
||
</row>
|
||
<row>
|
||
<entry>idle processes</entry>
|
||
<entry>Количество процессов, которые в настоящее время простаивают (ожидают запросов).</entry>
|
||
</row>
|
||
<row>
|
||
<entry>active processes</entry>
|
||
<entry>Количество процессов, которые в настоящее время обрабатывают запросы.</entry>
|
||
</row>
|
||
<row>
|
||
<entry>total processes</entry>
|
||
<entry>Текущее общее количество процессов.</entry>
|
||
</row>
|
||
<row>
|
||
<entry>max active processes</entry>
|
||
<entry>Максимальное количество одновременно активных процессов.</entry>
|
||
</row>
|
||
<row>
|
||
<entry>max children reached</entry>
|
||
<entry>
|
||
Было ли достигнуто максимальное количество процессов? Если да, то отображаемое значение
|
||
будет больше или равно <literal>1</literal>, иначе значение будет равно <literal>0</literal>.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry>slow requests</entry>
|
||
<entry>
|
||
Общее количество запросов, которые достигли настроенного
|
||
<literal>request_slowlog_timeout</literal>.
|
||
</entry>
|
||
</row>
|
||
</tbody>
|
||
</tgroup>
|
||
</table>
|
||
|
||
<table>
|
||
<title>Информация о каждом процессе — отображается только в режиме вывода <literal>full</literal></title>
|
||
<tgroup cols="2">
|
||
<thead>
|
||
<row>
|
||
<entry>Параметр</entry>
|
||
<entry>Описание</entry>
|
||
</row>
|
||
</thead>
|
||
<tbody>
|
||
<row>
|
||
<entry>pid</entry>
|
||
<entry>Системный PID-идентификатор процесса.</entry>
|
||
</row>
|
||
<row>
|
||
<entry>state</entry>
|
||
<entry>Состояние процесса — Idle, Running, …</entry>
|
||
</row>
|
||
<row>
|
||
<entry>start time</entry>
|
||
<entry>Дата и время начала процесса.</entry>
|
||
</row>
|
||
<row>
|
||
<entry>start since</entry>
|
||
<entry>Количество секунд с момента начала процесса.</entry>
|
||
</row>
|
||
<row>
|
||
<entry>requests</entry>
|
||
<entry>Общее количество обслуженных запросов.</entry>
|
||
</row>
|
||
<row>
|
||
<entry>request duration</entry>
|
||
<entry>Общее время в микросекундах, затраченное на обслуживание последнего запроса.</entry>
|
||
</row>
|
||
<row>
|
||
<entry>request method</entry>
|
||
<entry>Метод HTTP последнего обслуженного запроса.</entry>
|
||
</row>
|
||
<row>
|
||
<entry>request uri</entry>
|
||
<entry>
|
||
URI-идентификатор последнего обслуженного запроса (после обработки веб-сервером он всегда может быть
|
||
равен <literal>/index.php</literal>, если вы используете шаблонный редирект фронт-контроллера).
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry>content length</entry>
|
||
<entry>Длина тела запроса, в байтах, последнего запроса.</entry>
|
||
</row>
|
||
<row>
|
||
<entry>user</entry>
|
||
<entry>HTTP-пользователь (<literal>PHP_AUTH_USER</literal>) последнего запроса.</entry>
|
||
</row>
|
||
<row>
|
||
<entry>script</entry>
|
||
<entry>
|
||
Полный путь к скрипту, который выполнил последний запрос. Это будет
|
||
<literal>'-'</literal>, если не применимо (например, запросы страницы состояния).
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry>last request cpu</entry>
|
||
<entry>
|
||
Процент занятого центральным процессором времени при выполнении последнего запроса.
|
||
Это значение будет равно 0, если процесс не в состоянии Idle,
|
||
потому что вычисление проводится после окончания обработки запроса.
|
||
Значение может превысить 100 %, потому что метрика покажет,
|
||
какой процент от общего времени работы процессора
|
||
занял последний запрос, —
|
||
в расчёте менеджер учтёт процессы на каждом ядре,
|
||
тогда как 100 % — это значение только для одного ядра.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry>last request memory</entry>
|
||
<entry>
|
||
Максимальный объем памяти, который потребил последний запрос.
|
||
Это значение будет равно 0, если процесс не простаивает, поскольку
|
||
вычисление проводится после окончания обработки запроса.
|
||
</entry>
|
||
</row>
|
||
</tbody>
|
||
</tgroup>
|
||
</table>
|
||
|
||
<note>
|
||
<para>
|
||
Все значения специфичны для пула и сбрасываются при перезапуске менеджера FPM.
|
||
</para>
|
||
</note>
|
||
|
||
<note>
|
||
<para>
|
||
Данные вывода в формате стандарта OpenMetrics используют различные типы параметров,
|
||
чтобы лучше соответствовать формату OpenMetrics.
|
||
Параметры и описания их значений включаются в данные вывода формата OpenMetrics.
|
||
</para>
|
||
</note>
|
||
</sect2>
|
||
|
||
<sect2 role="changelog">
|
||
&reftitle.changelog;
|
||
<informaltable>
|
||
<tgroup cols="2">
|
||
<thead>
|
||
<row>
|
||
<entry>&Version;</entry>
|
||
<entry>&Description;</entry>
|
||
</row>
|
||
</thead>
|
||
<tbody>
|
||
<row>
|
||
<entry>8.1.0</entry>
|
||
<entry>Добавлен формат OpenMetrics.</entry>
|
||
</row>
|
||
</tbody>
|
||
</tgroup>
|
||
</informaltable>
|
||
</sect2>
|
||
</sect1>
|
||
<!-- Keep this comment at the end of the file
|
||
Local variables:
|
||
mode: sgml
|
||
sgml-omittag:t
|
||
sgml-shorttag:t
|
||
sgml-minimize-attributes:nil
|
||
sgml-always-quote-attributes:t
|
||
sgml-indent-step:1
|
||
sgml-indent-data:t
|
||
indent-tabs-mode:nil
|
||
sgml-parent-document:nil
|
||
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
|
||
sgml-exposed-tags:nil
|
||
sgml-local-catalogs:nil
|
||
sgml-local-ecat-files:nil
|
||
End:
|
||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||
vim: et tw=78 syn=sgml
|
||
vi: ts=1 sw=1
|
||
-->
|