Mercurial > hg > nginx-site
diff xml/ru/docs/http/ngx_http_log_module.xml @ 76:4a4caa566120
Russian documentation import.
Changes in module.dtd: <example> now allowed to contain <value> and
<emphasis> elements (we need this to show important parts in examples),
less strict checking of <directive> syntax (we don't want to fully
document some directives, notably deprecated ones).
Known issues:
1. <syntax> elements are preserved as is, they will require manual conversion
(likely to some not-yet-existed format a la DocBook cmdsynopsis, as
currently used one seems to be incomplete);
2. <value> no longer corresponds to replaceable content, and it's use in
examples isn't correct;
3. <link doc="document#fragment"> doesn't work with current xslt, either
should be supported or changed to <link doc="document" id="fragment">.
The following files are intentionally omitted: maillists.xml (support.xml
should be used instead), experimental.xml (obsolete), faq.xml (conflicts
with existing one, needs discussion).
Not yet linked to site.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Tue, 11 Oct 2011 12:57:50 +0000 |
parents | |
children | 0a45870d0160 |
line wrap: on
line diff
new file mode 100644 --- /dev/null +++ b/xml/ru/docs/http/ngx_http_log_module.xml @@ -0,0 +1,226 @@ +<?xml version="1.0" encoding="utf-8"?> + +<!DOCTYPE module SYSTEM "../../../../dtd/module.dtd"> + +<module name="Директивы модуля ngx_http_log_module" + link="/ru/docs/http/ngx_http_log_module.html" + lang="ru"> + +<section name="" id="summary"> + +<para> +Модуль ngx_http_log_module записывает логи запросов в указанном формате. +</para> + +</section> + + +<section name="Пример конфигурации" id="example"> + +<para> +<example> + 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; +</example> +</para> + +</section> + + +<section name="Директивы" id="directives"> + +<directive name="access_log"> +<syntax>access_log <value>путь [формат [buffer=размер]]|off</value> +</syntax> +<default>access_log log/access.log combined</default> +<context>http, server, location, if в location, limit_except</context> + +<para> +Директива access_log задаёт путь, формат и размер буфера для буферизированной +записи в лог. На одном уровне может использоваться несколько логов. +Параметр "off" отменяет все директивы access_log для текущего уровня. +Если формат не указан, то используется предопределённый формат "combined". +</para> + +<para> +Размер буфера должен быть не больше размера атомарной записи в дисковый файл. +Для FreeBSD 3.0-6.0 этот размер неограничен. +</para> + +<para> +В пути файла можно использовать переменные (0.7.6+), +но такие логи имеют некоторые ограничения: +<list type="bullet"> + +<listitem> +пользователь, с правами которого работают рабочие процессы, должен +иметь права на создание файлов в каталоге с такими логами; +</listitem> + +<listitem> +не работает буферизация; +</listitem> + +<listitem> +файл открывается для каждой записи в лог и сразу же после записи закрывается. +Но дескрипторы часто используемых файлов могут храниться в +<link id="open_log_file_cache"/>. +При вращении логов нужно иметь в виду, что в течение времени, заданного +параметром valid директивы <link id="open_log_file_cache"/>, +запись может продолжаться в старый файл. +</listitem> + +<listitem> +при каждой записи в лог проверяется существование каталога root'а для +запроса — если этот каталог не существует, то лог не создаётся. +Поэтому <link doc="ngx_http_core_module.xml#root">root</link> +и access_log нужно описывать на одном уровне: +<example> +server { + root /spool/vhost/data/$host; + access_log /spool/vhost/logs/$host; + ... +</example> +</listitem> + +</list> +</para> + +</directive> + + +<directive name="log_format"> +<syntax>log_format <value>название строка [строка ...]</value> +</syntax> +<default>log_format combined "..." </default> +<context>http</context> + +<para> +Директива log_format описывает формат лога. +</para> + +<para> +Кроме общих переменных в формате можно использовать переменные, +существующие только на момент записи в лог: +<list type="bullet"> + +<listitem> +$body_bytes_sent, число байт, переданное клиенту за вычетом заголовка ответа, +переменная совместима с параметром %B модуля Apache mod_log_config; +</listitem> + +<listitem> +$bytes_sent, число байт, переданное клиенту; +</listitem> + +<listitem> +$connection, номер соединения; +</listitem> + +<listitem> +$msec, время в секундах с точностью до миллисекунд на момент записи в лог; +</listitem> + +<listitem> +$pipe, "p" если запрос был pipelined; +</listitem> + +<listitem> +$request_length, длина тела запроса; +</listitem> + +<listitem> +$request_time, время обработки запроса в секундах с точностью до миллисекунд; +</listitem> + +<listitem> +$status, статус ответа; +</listitem> + +<listitem> +$time_local, локальное время в common log format. +</listitem> + +</list> +</para> + +<para> +Строки заголовка, переданные клиенту, начинаются с префикса "sent_http_", +например, $sent_http_content_range. +</para> + +<para> +В конфигурации всегда существует предопределённый формат "combined": +<example> + log_format combined '$remote_addr - $remote_user [$time_local] ' + '"$request" $status $body_bytes_sent ' + '"$http_referer" "$http_user_agent"'; +</example> +</para> + +</directive> + +<directive name="open_log_file_cache"> + +<syntax>open_log_file_cache <value>max=N [inactive=время]|off</value> +</syntax> +<default>open_log_file_cache off</default> +<context>http, server, location</context> + +<para> +Директива задаёт кэш, в котором хранятся дескрипторы файлов часто используемых +логов, имена которых заданы переменными. +</para> + +<para> +Параметры директивы: +<list type="bullet"> + +<listitem> +max — задаёт маскимальное число дескрипторов в кэше; +при переполнении кэша наиболее давно не используемые дескрипторы закрываются +(LRU); +</listitem> + +<listitem> +inactive — задаёт время, после которого дескриптор кэша закрывается, +если к нему не было обращений в течение этого времени; +по умолчанию 10 секунд; +</listitem> + +<listitem> +min_uses — задаёт минимальное число использований файла в течение +времени, заданного параметром inactive в директиве +<link id="open_log_file_cache"/>, после которого дескриптор файла +будет оставаться окрытым в кэше; +по умолчанию 1 использование; +</listitem> + +<listitem> +valid — задаёт, через какое время нужно проверять, что файл ещё +существует под тем же именем; +по умолчанию 60 секунд; +</listitem> + +<listitem> +off — запрещает кэш. +</listitem> + +</list> +</para> + +<para> +Пример использования: +<example> +open_log_file_cache max=1000 inactive=20s valid=1m min_uses=2; +</example> +</para> + +</directive> + +</section> + +</module>