1
0
mirror of https://github.com/php/doc-ru.git synced 2026-03-26 00:32:15 +01:00
Files
archived-doc-ru/reference/fpm/status.xml
2024-04-21 02:52:20 +03:00

322 lines
13 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?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&amp;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
-->