Модуль ngx_http_session_log_module
Модуль ngx_http_session_log_module позволяет регистрировать сессии (то есть агрегаты нескольких запросов HTTP) вместо отдельных запросов HTTP.
Данный модуль доступен в рамках нашей коммерческой подписки.
Пример конфигурации
Следующая конфигурация настраивает журнал сессий и сопоставляет запросы с сессиями в соответствии с адресом клиента запроса и полем заголовка запроса «User-Agent»:
session_log_zone /path/to/log format=combined
zone=one:1m timeout=30s
md5=$binary_remote_addr$http_user_agent;
location /media/ {
session_log one;
}
Директивы
| Синтаксис: | session_log name | off; |
|---|---|
| По умолчанию: | session_log off; |
| Контекст: | http, server, location |
Включает использование указанного журнала сессий. Специальное значение off отменяет действие директивы session_log унаследованной с предыдущего уровня конфигурации.
| Синтаксис: | session_log_format
name
string ...; |
|---|---|
| По умолчанию: | session_log_format combined "..."; |
| Контекст: | http |
Указывает формат вывода журнала. Значение переменной $body_bytes_sent агрегируется по всем запросам в рамках одной сессии. Значения всех остальных переменных, доступных для регистрации, соответствуют первому запросу в сессии.
| Синтаксис: | session_log_zone
path
zone=name:size
[format=format]
[timeout=time]
[id=id]
[md5=md5]
; |
|---|---|
| По умолчанию: | — |
| Контекст: | http |
Устанавливает путь к файлу журнала и настраивает зону общей памяти, используемую для хранения активных сессий.
Сессия считается активной до тех пор, пока время, прошедшее с момента последнего запроса в сессии, не превысит указанное значение timeout (по умолчанию 30 секунд). После того, как сессия перестанет быть активной, она записывается в журнал.
Параметр id идентифицирует сессию, к которой сопоставляется запрос. Параметр id устанавливается в шестнадцатеричном представлении хэш-суммы MD5 (например, полученной из cookie с помощью переменных). Если этот параметр не указан или не представляет собой корректную хэш-сумму MD5, nginx вычисляет хэш-сумму MD5 из значения параметра md5 и создает новую сессию, используя эту хэш-сумму. Оба параметра id и md5 могут содержать переменные.
Параметр format задаёт пользовательский формат журнала сессий, настроенный директивой session_log_format. Если format не указан, используется предопределённый формат «combined».
Встроенные переменные
Модуль ngx_http_session_log_module поддерживает две встроенные переменные:
$session_log_id- текущий идентификатор сессии;
-
$session_log_binary_id - текущий идентификатор сессии в двоичном формате (16 байт).
© 2002-2021 Igor Sysoev
© 2011-2024 Nginx, Inc.
Licensed under the BSD License.
https://nginx.org/en/docs/http/ngx_http_session_log_module.html