comparison src/core/ngx_log.h @ 92:45945fa8b8ba NGINX_0_2_0

nginx 0.2.0 *) The pid-file names used during online upgrade was changed and now is not required a manual rename operation. The old master process adds the ".oldbin" suffix to its pid-file and executes a new binary file. The new master process creates usual pid-file without the ".newbin" suffix. If the master process exits, then old master process renames back its pid-file with the ".oldbin" suffix to the pid-file without suffix. *) Change: the "worker_connections" directive, new name of the "connections" directive; now the directive specifies maximum number of connections, but not maximum socket descriptor number. *) Feature: SSL supports the session cache inside one worker process. *) Feature: the "satisfy_any" directive. *) Change: the ngx_http_access_module and ngx_http_auth_basic_module do not run for subrequests. *) Feature: the "worker_rlimit_nofile" and "worker_rlimit_sigpending" directives. *) Bugfix: if all backend using in load-balancing failed after one error, then nginx did not try do connect to them during 60 seconds. *) Bugfix: in IMAP/POP3 command argument parsing. Thanks to Rob Mueller. *) Bugfix: errors while using SSL in IMAP/POP3 proxy. *) Bugfix: errors while using SSI and gzipping. *) Bugfix: the "Expires" and "Cache-Control" header lines were omitted from the 304 responses. Thanks to Alexandr Kukushkin.
author Igor Sysoev <http://sysoev.ru>
date Fri, 23 Sep 2005 00:00:00 +0400
parents 5db440287648
children 003bd800ec2a
comparison
equal deleted inserted replaced
91:c3eee83ea942 92:45945fa8b8ba
70 #if (NGX_HAVE_GCC_VARIADIC_MACROS) 70 #if (NGX_HAVE_GCC_VARIADIC_MACROS)
71 71
72 #define NGX_HAVE_VARIADIC_MACROS 1 72 #define NGX_HAVE_VARIADIC_MACROS 1
73 73
74 #define ngx_log_error(level, log, args...) \ 74 #define ngx_log_error(level, log, args...) \
75 if (log->log_level >= level) ngx_log_error_core(level, log, args) 75 if ((log)->log_level >= level) ngx_log_error_core(level, log, args)
76 76
77 void ngx_log_error_core(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, 77 void ngx_log_error_core(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
78 const char *fmt, ...); 78 const char *fmt, ...);
79 79
80 #define ngx_log_debug(level, log, args...) \ 80 #define ngx_log_debug(level, log, args...) \
81 if (log->log_level & level) \ 81 if ((log)->log_level & level) \
82 ngx_log_error_core(NGX_LOG_DEBUG, log, args) 82 ngx_log_error_core(NGX_LOG_DEBUG, log, args)
83 83
84 /*********************************/ 84 /*********************************/
85 85
86 #elif (NGX_HAVE_C99_VARIADIC_MACROS) 86 #elif (NGX_HAVE_C99_VARIADIC_MACROS)
87 87
88 #define NGX_HAVE_VARIADIC_MACROS 1 88 #define NGX_HAVE_VARIADIC_MACROS 1
89 89
90 #define ngx_log_error(level, log, ...) \ 90 #define ngx_log_error(level, log, ...) \
91 if (log->log_level >= level) ngx_log_error_core(level, log, __VA_ARGS__) 91 if ((log)->log_level >= level) ngx_log_error_core(level, log, __VA_ARGS__)
92 92
93 void ngx_log_error_core(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, 93 void ngx_log_error_core(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
94 const char *fmt, ...); 94 const char *fmt, ...);
95 95
96 #define ngx_log_debug(level, log, ...) \ 96 #define ngx_log_debug(level, log, ...) \
97 if (log->log_level & level) \ 97 if ((log)->log_level & level) \
98 ngx_log_error_core(NGX_LOG_DEBUG, log, __VA_ARGS__) 98 ngx_log_error_core(NGX_LOG_DEBUG, log, __VA_ARGS__)
99 99
100 /*********************************/ 100 /*********************************/
101 101
102 #else /* NO VARIADIC MACROS */ 102 #else /* NO VARIADIC MACROS */
132 132
133 133
134 #else /* NO VARIADIC MACROS */ 134 #else /* NO VARIADIC MACROS */
135 135
136 #define ngx_log_debug0(level, log, err, fmt) \ 136 #define ngx_log_debug0(level, log, err, fmt) \
137 if (log->log_level & level) \ 137 if ((log)->log_level & level) \
138 ngx_log_debug_core(log, err, fmt) 138 ngx_log_debug_core(log, err, fmt)
139 139
140 #define ngx_log_debug1(level, log, err, fmt, arg1) \ 140 #define ngx_log_debug1(level, log, err, fmt, arg1) \
141 if (log->log_level & level) \ 141 if ((log)->log_level & level) \
142 ngx_log_debug_core(log, err, fmt, arg1) 142 ngx_log_debug_core(log, err, fmt, arg1)
143 143
144 #define ngx_log_debug2(level, log, err, fmt, arg1, arg2) \ 144 #define ngx_log_debug2(level, log, err, fmt, arg1, arg2) \
145 if (log->log_level & level) \ 145 if ((log)->log_level & level) \
146 ngx_log_debug_core(log, err, fmt, arg1, arg2) 146 ngx_log_debug_core(log, err, fmt, arg1, arg2)
147 147
148 #define ngx_log_debug3(level, log, err, fmt, arg1, arg2, arg3) \ 148 #define ngx_log_debug3(level, log, err, fmt, arg1, arg2, arg3) \
149 if (log->log_level & level) \ 149 if ((log)->log_level & level) \
150 ngx_log_debug_core(log, err, fmt, arg1, arg2, arg3) 150 ngx_log_debug_core(log, err, fmt, arg1, arg2, arg3)
151 151
152 #define ngx_log_debug4(level, log, err, fmt, arg1, arg2, arg3, arg4) \ 152 #define ngx_log_debug4(level, log, err, fmt, arg1, arg2, arg3, arg4) \
153 if (log->log_level & level) \ 153 if ((log)->log_level & level) \
154 ngx_log_debug_core(log, err, fmt, arg1, arg2, arg3, arg4) 154 ngx_log_debug_core(log, err, fmt, arg1, arg2, arg3, arg4)
155 155
156 #define ngx_log_debug5(level, log, err, fmt, arg1, arg2, arg3, arg4, arg5) \ 156 #define ngx_log_debug5(level, log, err, fmt, arg1, arg2, arg3, arg4, arg5) \
157 if (log->log_level & level) \ 157 if ((log)->log_level & level) \
158 ngx_log_debug_core(log, err, fmt, arg1, arg2, arg3, arg4, arg5) 158 ngx_log_debug_core(log, err, fmt, arg1, arg2, arg3, arg4, arg5)
159 159
160 #define ngx_log_debug6(level, log, err, fmt, \ 160 #define ngx_log_debug6(level, log, err, fmt, \
161 arg1, arg2, arg3, arg4, arg5, arg6) \ 161 arg1, arg2, arg3, arg4, arg5, arg6) \
162 if (log->log_level & level) \ 162 if ((log)->log_level & level) \
163 ngx_log_debug_core(log, err, fmt, arg1, arg2, arg3, arg4, arg5, arg6) 163 ngx_log_debug_core(log, err, fmt, arg1, arg2, arg3, arg4, arg5, arg6)
164 164
165 #define ngx_log_debug7(level, log, err, fmt, \ 165 #define ngx_log_debug7(level, log, err, fmt, \
166 arg1, arg2, arg3, arg4, arg5, arg6, arg7) \ 166 arg1, arg2, arg3, arg4, arg5, arg6, arg7) \
167 if (log->log_level & level) \ 167 if ((log)->log_level & level) \
168 ngx_log_debug_core(log, err, fmt, \ 168 ngx_log_debug_core(log, err, fmt, \
169 arg1, arg2, arg3, arg4, arg5, arg6, arg7) 169 arg1, arg2, arg3, arg4, arg5, arg6, arg7)
170 170
171 #define ngx_log_debug8(level, log, err, fmt, \ 171 #define ngx_log_debug8(level, log, err, fmt, \
172 arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) \ 172 arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) \
173 if (log->log_level & level) \ 173 if ((log)->log_level & level) \
174 ngx_log_debug_core(log, err, fmt, \ 174 ngx_log_debug_core(log, err, fmt, \
175 arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) 175 arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8)
176 176
177 #endif 177 #endif
178 178