Без кейворда
Модуль ngx_http_status_module предоставляет доступ к информации о состоянии сервера.
Пример конфигурацииПримеры запросов информации о состоянии, возможные с данной конфигурацией:
В составе дистрибутива nginx имеется простая страница мониторинга, доступная по запросу “ /status.html ” в стандартной конфигурации. Для работы этой страницы требуется настроить location “ /status ” и location “ /status.html ” как показано выше.
Директивы Синтаксис: status; Умолчание: — Контекст: locationИнформация о состоянии будет доступна из содержащего location. Доступ в location следует ограничить.
Синтаксис: status_format json ; status_format jsonp [ callback ]; Умолчание: Контекст: http , server , locationПо умолчанию информация выводится в формате JSON.
Также данные могут выводиться в формате JSONP. Параметр callback задаёт имя callback-функции. В значении параметра можно использовать переменные. Если параметр не задан или вычисленное значение является пустой строкой, используется имя “ ngx_status_jsonp_callback ”.
Синтаксис: status_zone зона ; Умолчание: — Контекст: serverВключает сбор информации о состоянии виртуального сервера группы http или stream (1.7.11) в указанной зоне . В одной и той же зоне может одновременно собираться информация сразу по нескольким серверам.
ДанныеДоступна следующая информация:
version Версия предоставляемого набора данных. Текущей является версия 8. nginx_version Версия nginx. nginx_build Название сборки nginx. address Адрес сервера, принявшего запрос на получение информации о состоянии. generation Суммарное число перезагрузок конфигурации. load_timestamp Время последней перезагрузки конфигурации, в миллисекундах с начала эпохи. timestamp Текущее время в миллисекундах с начала эпохи. pid Идентификатор рабочего процесса, обработавшего запрос на получение информации о состоянии. ppid Идентификатор главного процесса, запустившего рабочий процесс. processes respawned Суммарное число перезапусков аварийно завершённых дочерних процессов. connections accepted Суммарное число принятых клиентских соединений. dropped Суммарное число отвергнутых клиентских соединений. active Текущее число активных клиентских соединений. idle Текущее число бездействующих клиентских соединений. ssl handshakes Суммарное число успешных операций SSL handshake. handshakes_failed Суммарное число неуспешных операций SSL handshake. session_reuses Суммарное число повторных использований SSL-сессий во время операций SSL handshake. requests total Суммарное число клиентских запросов. current Текущее число клиентских запросов. server_zones Для каждой status_zone: processing Число обрабатываемых в настоящий момент клиентских запросов. requests Суммарное число запросов, полученных от клиентов. responses total Суммарное число ответов, отправленных клиентам. 1xx , 2xx , 3xx , 4xx , 5xx Число ответов со статусами 1xx, 2xx, 3xx, 4xx и 5xx. discarded Суммарное число запросов, завершившихся без отправки ответа. received Суммарное число байт, полученных от клиентов. sent Суммарное число байт, отправленных клиентам. slabs Для каждой зоны разделяемой памяти, в которой используется распределение slab: pages used Текущее число занятых страниц памяти. free Текущее число свободных страниц памяти. slots Для каждого размера слота памяти (8, 16, 32, 64, 128 и т.д.) доступны следующие данные: used Текущее число занятых слотов памяти. free Текущее число свободных слотов памяти. reqs Суммарное число попыток выделения памяти указанного размера. fails Число неудачных попыток выделения памяти указанного размера. upstreams Для каждой динамически настраиваемой группы доступны следующие данные: peers Для каждого сервера доступны следующие данные: id Идентификатор сервера. server Адрес сервера. name Имя сервера, указанное в директиве server. service Значение параметра service директивы server. backup Логическое значение, означающее, является ли сервер запасным. weight Вес сервера. state Текущее состояние, которое может быть одним из “ up ”, “ draining ”, “ down ”, “ unavail ”, “ checking ” или “ unhealthy ”. active Текущее число активных соединений. max_conns Ограничение max_conns для сервера. requests Суммарное число клиентских запросов, перенаправленных на этот сервер. responses total Суммарное число ответов, полученных от этого сервера. 1xx , 2xx , 3xx , 4xx , 5xx Число ответов со статусами 1xx, 2xx, 3xx, 4xx и 5xx. sent Суммарное число байт, отправленных на этот сервер. received Суммарное число байт, полученных с этого сервера. fails Суммарное число неудачных попыток работы с этим сервером. unavail Количество раз, когда сервер становился недоступным для клиентских запросов (состояние “ unavail ”) из-за достижения порогового числа неудачных попыток max_fails. health_checks checks Суммарное число запросов проверки работоспособности. fails Число неудачных проверок работоспособности. unhealthy Количество раз, когда сервер становился неработоспособным (состояние “ unhealthy ”). last_passed Логическое значение, означающее, была ли последняя проверка работоспособности удачной и удовлетворял ли ответ заданным тестам. downtime Суммарное время, когда сервер находился в состояниях “ unavail ”, “ checking ” и “ unhealthy ”. downstart Время (в миллисекундах с начала эпохи), когда сервер стал “ unavail ”, “ checking ” или “ unhealthy ”. selected Время (в миллисекундах с начала эпохи), когда сервер в последний раз был выбран для обработки запроса (1.7.5). header_time Среднее время получения заголовка ответа от сервера (1.7.10). До версии 1.11.6 поле было доступно только при использовании метода балансировки least_time. response_time Среднее время получения всего ответа от сервера (1.7.10). До версии 1.11.6 поле было доступно только при использовании метода балансировки least_time. keepalive Текущее число бездействующих keepalive-соединений. zombies Текущее число серверов, удалённых из группы, но всё ещё обрабатывающих активные клиентские запросы. zone Имя зоны разделяемой памяти, в которой хранятся конфигурация группы и её рабочее состояние. queue Для очереди запросов доступны следующие данные: size Текущее число запросов в очереди. max_size Максимальное число запросов, которые могут одновременно находиться в очереди. overflows Суммарное число запросов, отклонённых из-за переполнения очереди. caches Для каждого кэша, сконфигурированного при помощи proxy_cache_path и аналогичных директив: size Текущий размер кэша. max_size Ограничение на максимальный размер кэша, заданное в конфигурации. cold Логическое значение, указывающее, продолжается ли загрузка данных процессом “cache loader” с диска в кэш. hit , stale , updating , revalidated responses Суммарное число ответов, прочитанных из кэша (попадания в кэш или просроченные ответы вследствие proxy_cache_use_stale и аналогичных директив). bytes Суммарное число байт, прочитанных из кэша. miss , expired , bypass responses Суммарное число ответов, взятых не из кэша ( miss — отсутствие данных в кэше, expired — просроченные ответы, bypass — ответ не был взят из кэша вследствие proxy_cache_bypass и аналогичных директив). bytes Суммарное число байт, прочитанных с проксируемого сервера. responses_written Суммарное число ответов, записанных в кэш. bytes_written Суммарное число байт, записанных в кэш. stream server_zones Для каждой status_zone: processing Число обрабатываемых в настоящий момент клиентских соединений. connections Суммарное число соединений, полученных от клиентов. sessions total Суммарное число завершённых клиентских сессий. 2xx , 4xx , 5xx Число завершённых сессий со статусами 2xx, 4xx или 5xx. discarded Суммарное число соединений, завершённых без создания сессии. received Суммарное число байт, полученных от клиентов. sent Суммарное число байт, отправленных клиентам. upstreams Для каждого сервера в динамически настраиваемой группе доступны следующие данные: id Идентификатор сервера. server Адрес сервера. name Имя сервера, указанное в директиве server. service Значение параметра service директивы server. backup Логическое значение, означающее, является ли сервер запасным. weight Вес сервера. state Текущее состояние, которое может быть одним из “ up ”, “ down ”, “ unavail ”, “ checking ” или “ unhealthy ”. active Текущее число соединений. max_conns Ограничение max_conns для сервера. connections Суммарное число клиентских соединений, перенаправленных на этот сервер. connect_time Среднее время установки соединения с сервером группы. До версии 1.11.6 поле было доступно только при использовании метода балансировки least_time. first_byte_time Среднее время получения первого байта данных. До версии 1.11.6 поле было доступно только при использовании метода балансировки least_time. response_time Среднее время получения последнего байта данных. До версии 1.11.6 поле было доступно только при использовании метода балансировки least_time. sent Суммарное число байт, отправленных на этот сервер. received Суммарное число байт, полученных с этого сервера. fails Суммарное число неудачных попыток работы с этим сервером. unavail Количество раз, когда сервер становился недоступным для клиентских соединений (состояние “ unavail ”) из-за достижения порогового числа неудачных попыток max_fails. health_checks checks Суммарное число запросов проверки работоспособности. fails Число неудачных проверок работоспособности. unhealthy Количество раз, когда сервер становился неработоспособным (состояние “ unhealthy ”). last_passed Логическое значение, означающее, была ли последняя проверка работоспособности удачной и удовлетворял ли ответ заданным тестам. downtime Суммарное время, когда сервер находился в состояниях “ unavail ”, “ checking ” и “ unhealthy ”. downstart Время (в миллисекундах с начала эпохи), когда сервер стал “ unavail ”, “ checking ” или “ unhealthy ”. selected Время (в миллисекундах с начала эпохи), когда сервер в последний раз был выбран для обработки соединения. zombies Текущее число серверов, удалённых из группы, но всё ещё обрабатывающих активные клиентские соединения. zone Имя зоны разделяемой памяти, в которой хранятся конфигурация группы и её рабочее состояние.