RuHttpLogModule
Contents |
[edit] ngx_http_log_module
Модуль ngx_http_log_module записывает логи запросов в указанном формате. Содержание Пример конфигурации
[edit] Директивы
- [#access_log access_log]
- [#log_format log_format ]
Пример конфигурации
: log_format gzip '$remote_addr - $remote_user [$time_local] ' : '"$request" $status $bytes_sent ' : '"$http_referer" "$http_user_agent" "$gzip_ratio"'; : access_log /spool/logs/nginx-access.log gzip buffer=32k;
[edit] access_log
syntax: access_log путь [формат [buffer=размер |off ] default: access_log log/access.log combined
context: http, server, location
Директива access_log задаёт путь, формат и размер буфера для буферизированной записи в лог. На одном уровне может использоваться несколько логов. Параметр "off" отменяет все директивы access_log для текущего уровня. Если формат не указан, то используется предопределённый формат "combined".
Размер буфера должен быть не больше размера атомарной записи в дисковый файл. Для FreeBSD 3.0-6.0 этот размер неограничен.
[edit] log_format
syntax: log_format название строка [строка ...]
default: log_format combined "..."
context: http
Директива log_format описывает формат лога.
Кроме общих переменных в формате можно использовать переменные, существующие только на момент записи в лог:
- $body_bytes_sent, число байт, переданное клиенту за вычетом заголовка ответа, переменная совместима с параметром %B модуля Apache mod_log_config;
- $bytes_sent, число байт, переданное клиенту;
- $connection, номер соединения;
- $msec, время с точностью до микросекунд на момент записи в лог;
- $pipe, "p" если запрос был pipeling ;
- $request_length, длина тела запроса;
- $request_time, время обработки запроса в секундах;
- $status, статус ответа;
- $time_local, локальное время в common log format.
Строки заголовка, переданные клиенту, начинаются с префикса "sent_http_", например, $sent_http_content_range.
В конфигурации всегда существует предопределённый формат "combined":
: log_format combined '$remote_addr - $remote_user [$time_local] ' : '"$request" $status $apache_bytes_sent ' : '"$http_referer" "$http_user_agent"';










