annotate xml/en/docs/http/ngx_http_log_module.xml @ 430:570b312367bd

Documented the context of request logging.
author Ruslan Ermilov <ru@nginx.com>
date Tue, 28 Feb 2012 07:53:40 +0000
parents bb51d3e17dd0
children 1b2264bdd433
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1 <?xml version="1.0"?>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
3 <!DOCTYPE module SYSTEM "../../../../dtd/module.dtd">
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
4
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
5 <module name="Module ngx_http_log_module"
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
6 link="/en/docs/http/ngx_http_log_module.html"
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
7 lang="en">
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
8
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
9 <section id="summary">
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
10
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
11 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
12 The <literal>ngx_http_log_module</literal> module writes request logs
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
13 in the specified format.
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
14 </para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
15
430
570b312367bd Documented the context of request logging.
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
16 <para>
570b312367bd Documented the context of request logging.
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
17 Requests are logged in a context of a location where processing ends.
570b312367bd Documented the context of request logging.
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
18 This may be different from the original location, if an
570b312367bd Documented the context of request logging.
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
19 <link doc="ngx_http_core_module.xml" id="internal">internal
570b312367bd Documented the context of request logging.
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
20 redirect</link> happens during request processing.
570b312367bd Documented the context of request logging.
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
21 </para>
570b312367bd Documented the context of request logging.
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
22
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
23 </section>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
24
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
25
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
26 <section id="example" name="Example Configuration">
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
27
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
28 <para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
29 <example>
351
a4fa80755eab Consistently strip initial offset in examples.
Ruslan Ermilov <ru@nginx.com>
parents: 271
diff changeset
30 log_format gzip '$remote_addr - $remote_user [$time_local] '
a4fa80755eab Consistently strip initial offset in examples.
Ruslan Ermilov <ru@nginx.com>
parents: 271
diff changeset
31 '"$request" $status $bytes_sent '
a4fa80755eab Consistently strip initial offset in examples.
Ruslan Ermilov <ru@nginx.com>
parents: 271
diff changeset
32 '"$http_referer" "$http_user_agent" "$gzip_ratio"';
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
33
351
a4fa80755eab Consistently strip initial offset in examples.
Ruslan Ermilov <ru@nginx.com>
parents: 271
diff changeset
34 access_log /spool/logs/nginx-access.log gzip buffer=32k;
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
35 </example>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
36 </para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
37
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
38 </section>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
39
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
40
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
41 <section id="directives" name="Directives">
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
42
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
43 <directive name="access_log">
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
44 <syntax>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
45 <value>path</value>
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
46 [<value>format</value>
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
47 [<literal>buffer</literal>=<value>size</value>]]</syntax>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
48 <syntax><literal>off</literal></syntax>
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
49 <default>log/access.log combined</default>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
50 <context>http</context>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
51 <context>server</context>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
52 <context>location</context>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
53 <context>if in location</context>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
54 <context>limit_except</context>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
55
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
56 <para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
57 Sets the path, format, and buffer size for the buffered log writes.
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
58 Several logs can be specified on the same level.
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
59 The special value <literal>off</literal> cancels all
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
60 <literal>access_log</literal> directives on the current level.
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
61 If format is not specified then the predefined format
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
62 “<literal>combined</literal>” is used.
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
63 </para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
64
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
65 <para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
66 The buffer size must not exceed the size of the atomic write to a disk file.
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
67 For FreeBSD 3.0-6.0 this size is unlimited.
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
68 </para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
69
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
70 <para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
71 The file path can contain variables (0.7.6+),
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
72 but such logs have some constraints:
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
73 <list type="bullet">
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
74
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
75 <listitem>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
76 the <link doc="../ngx_core_module.xml" id="user"/>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
77 whose credentials are used by worker processes should
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
78 have permissions to create files in a directory with
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
79 such logs;
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
80 </listitem>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
81
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
82 <listitem>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
83 buffered writes do not work;
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
84 </listitem>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
85
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
86 <listitem>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
87 a file is opened and closed for each log write.
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
88 However, since the descriptors of frequently used files can be stored
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
89 in a <link id="open_log_file_cache">cache</link>, writes during the
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
90 time specified by the <literal>valid</literal> parameter of the
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
91 <link id="open_log_file_cache"/> directive can continue to be made
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
92 to the old file.
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
93 </listitem>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
94
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
95 <listitem>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
96 during each log write the existence of the request’s
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
97 <link doc="ngx_http_core_module.xml" id="root">root directory</link>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
98 is checked, and if it does not exist the log is not
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
99 created.
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
100 It is thus a good idea to specify both
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
101 <link doc="ngx_http_core_module.xml" id="root"/>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
102 and <literal>access_log</literal> on the same level:
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
103 <example>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
104 server {
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
105 root /spool/vhost/data/$host;
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
106 access_log /spool/vhost/logs/$host;
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
107 ...
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
108 </example>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
109 </listitem>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
110
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
111 </list>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
112 </para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
113
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
114 </directive>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
115
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
116
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
117 <directive name="log_format">
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
118 <syntax>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
119 <value>name</value>
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
120 <value>string</value> ...</syntax>
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
121 <default>combined "..."</default>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
122 <context>http</context>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
123
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
124 <para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
125 Specifies format of a log.
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
126 </para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
127
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
128 <para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
129 The log format can contain common variables, and variables that
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
130 exist only at the time of a log write:
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
131 <list type="tag">
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
132
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
133 <tag-name><var>$body_bytes_sent</var></tag-name>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
134 <tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
135 the number of bytes sent to a client not counting the response header;
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
136 this variable is compatible with the “<literal>%B</literal>” parameter of the
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
137 <literal>mod_log_config</literal>
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
138 Apache module
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
139 </tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
140
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
141 <tag-name><var>$bytes_sent</var></tag-name>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
142 <tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
143 the number of bytes sent to a client
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
144 </tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
145
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
146 <tag-name><var>$connection</var></tag-name>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
147 <tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
148 connection serial number
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
149 </tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
150
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
151 <tag-name><var>$msec</var></tag-name>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
152 <tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
153 time in seconds with a milliseconds resolution at the time of log write
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
154 </tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
155
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
156 <tag-name><var>$pipe</var></tag-name>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
157 <tag-desc>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
158 “<literal>p</literal>” if request was pipelined, “<literal>.</literal>”
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
159 otherwise
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
160 </tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
161
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
162 <tag-name><var>$request_length</var></tag-name>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
163 <tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
164 request length (including request line, header, and request body)
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
165 </tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
166
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
167 <tag-name><var>$request_time</var></tag-name>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
168 <tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
169 request processing time in seconds with a milliseconds resolution;
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
170 time elapsed since first bytes were read from the client till
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
171 last bytes were sent to client and logging happened
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
172 </tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
173
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
174 <tag-name><var>$status</var></tag-name>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
175 <tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
176 response status
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
177 </tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
178
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
179 <tag-name><var>$time_iso8601</var></tag-name>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
180 <tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
181 local time in the ISO 8601 standard format
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
182 </tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
183
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
184 <tag-name><var>$time_local</var></tag-name>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
185 <tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
186 local time in the Common Log Format
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
187 </tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
188
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
189 </list>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
190 </para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
191
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
192 <para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
193 Header lines sent to a client have the prefix
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
194 “<literal>sent_http_</literal>”, for example,
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
195 <var>$sent_http_content_range</var>.
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
196 </para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
197
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
198 <para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
199 The configuration always includes the predefined format
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
200 “<literal>combined</literal>”:
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
201 <example>
351
a4fa80755eab Consistently strip initial offset in examples.
Ruslan Ermilov <ru@nginx.com>
parents: 271
diff changeset
202 log_format combined '$remote_addr - $remote_user [$time_local] '
a4fa80755eab Consistently strip initial offset in examples.
Ruslan Ermilov <ru@nginx.com>
parents: 271
diff changeset
203 '"$request" $status $body_bytes_sent '
a4fa80755eab Consistently strip initial offset in examples.
Ruslan Ermilov <ru@nginx.com>
parents: 271
diff changeset
204 '"$http_referer" "$http_user_agent"';
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
205 </example>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
206 </para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
207
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
208 </directive>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
209
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
210
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
211 <directive name="open_log_file_cache">
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
212
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
213 <syntax>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
214 <literal>max</literal>=<value>N</value>
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
215 [<literal>inactive</literal>=<value>time</value>]
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
216 [<literal>min_uses</literal>=<value>N</value>]
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
217 [<literal>valid</literal>=<value>time</value>]</syntax>
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
218 <syntax><literal>off</literal></syntax>
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
219 <default>off</default>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
220 <context>http</context>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
221 <context>server</context>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
222 <context>location</context>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
223
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
224 <para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
225 Defines a cache that stores file descriptors of frequently used logs
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
226 whose names contain variables.
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
227 The directive has the following parameters:
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
228 <list type="tag">
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
229
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
230 <tag-name><literal>max</literal></tag-name>
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
231 <tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
232 sets a maximum number of descriptors in a cache;
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
233 if cache becomes full the least recently used (LRU)
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
234 descriptors are closed
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
235 </tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
236
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
237 <tag-name><literal>inactive</literal></tag-name>
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
238 <tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
239 sets a time after which the cached descriptor is closed
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
240 if there were no access during this time;
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
241 by default, 10 seconds
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
242 </tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
243
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
244 <tag-name><literal>min_uses</literal></tag-name>
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
245 <tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
246 sets a minimum number of file uses during the time
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
247 defined by the <literal>inactive</literal> parameter
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
248 after which the descriptor will stay open in a cache;
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
249 by default, 1
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
250 </tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
251
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
252 <tag-name><literal>valid</literal></tag-name>
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
253 <tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
254 sets a time after which it should be checked that the file
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
255 still exists with the same name; by default, 60 seconds
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
256 </tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
257
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
258 <tag-name><literal>off</literal></tag-name>
224
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
259 <tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
260 disables caching
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
261 </tag-desc>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
262
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
263 </list>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
264 </para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
265
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
266 <para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
267 Example usage:
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
268 <example>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
269 open_log_file_cache max=1000 inactive=20s valid=1m min_uses=2;
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
270 </example>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
271 </para>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
272
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
273 </directive>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
274
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
275 </section>
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
276
7f36795d99a2 Updated ngx_http_log_module documentation including translation into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
277 </module>