summaryrefslogtreecommitdiffhomepage
path: root/src/http/modules/ngx_http_log_module.c (follow)
AgeCommit message (Collapse)AuthorFilesLines
2018-03-01Access log: support for disabling escaping (ticket #1450).Vladimir Homutov1-8/+60
Based on patches by Johannes Baiter <johannes.baiter@bsb-muenchen.de> and Calin Don.
2017-03-28Fixed ngx_open_cached_file() error handling.Sergey Kandaurov1-0/+5
If of.err is 0, it means that there was a memory allocation error and no further logging and/or processing is needed. The of.failed string can be only accessed if of.err is not 0.
2017-03-07Access log: removed dead ev->timedout check in flush timer handler.Maxim Dounin1-14/+1
The ev->timedout flag is set on first timer expiration, and never reset after it. Due to this the code to stop the timer when the timer was canceled never worked (except in a very specific time frame immediately after start), and the timer was always armed again. This essentially resulted in a buffer flush at the end of an event loop iteration. This behaviour actually seems to be better than just stopping the flush timer for the whole shutdown, so it is preserved as is instead of fixing the code to actually remove the timer. It will be further improved by upcoming changes to preserve cancelable timers if there are other timers blocking shutdown.
2016-12-15Access log: support for json escaping.Valentin Bartenev1-6/+77
2016-07-07Avoid left-shifting integers into the sign bit, which is undefined.Sergey Kandaurov1-2/+2
Found with UndefinedBehaviorSanitizer.
2014-12-01Access log: restricted "log_format" to "http" level.Sergey Kandaurov1-7/+1
Specifying the "log_format" directive on levels other than "http" is deprecated since 73d37e1ccb91 (1.1.11).
2014-08-25Access log: cancel the flush timer on graceful shutdown.Valentin Bartenev1-1/+15
Previously, it could prevent a worker process from exiting for up to the configured flush timeout.
2014-09-13Access log: fixed the "if=" parameter with buffering (ticket #625).Valentin Bartenev1-21/+20
It might not work if there were more than one "access_log" directives pointed to the same file and duplicate buffer parameters.
2014-08-06Access log: allowed logs to syslog with "if=" (ticket #596).Maxim Dounin1-11/+6
2014-06-03Access log: fix default value, broken by cb308813b453.Piotr Sikora1-5/+2
log->filter ("if" parameter) was uninitialized when the default value was being used, which would lead to a crash (SIGSEGV) when access_log directive wasn't specified in the configuration. Zero-fill the whole structure instead of zeroing fields one-by-one in order to prevent similar issues in the future. Signed-off-by: Piotr Sikora <piotr@cloudflare.com>
2014-05-12Added syslog support for error_log and access_log directives.Vladimir Homutov1-1/+70
2014-04-15Access log: the "if" parameter of the "access_log" directive.Sergey Kandaurov1-10/+47
The parameter value specifies a condition under which the request is logged.
2013-09-04Win32: $request_time fixed.Maxim Dounin1-1/+1
On win32, time_t is 64 bits wide by default, and passing an ngx_msec_int_t argument for %T format specifier doesn't work. This doesn't manifest itself on other platforms as time_t and ngx_msec_int_t are usually of the same size.
2013-08-20Backed out f1a91825730a and 7094bd12c1ff.Maxim Dounin1-3/+1
While ngx_get_full_name() might have a bit more descriptive arguments, the ngx_conf_full_name() is generally easier to use when parsing configuration and limits exposure of cycle->prefix / cycle->conf_prefix details.
2013-08-06Replaced ngx_conf_full_name() with ngx_get_full_name().Valentin Bartenev1-1/+3
The ngx_get_full_name() function takes more readable arguments list.
2012-12-23Access log: the "gzip" parameter of the "access_log" directive.Valentin Bartenev1-5/+213
Note: this requires zlib version 1.2.0.4 or above to work.
2012-12-23Access log: the "flush" parameter of the "access_log" directive.Valentin Bartenev1-23/+97
2012-12-23Reopening log files code moved to a separate function.Valentin Bartenev1-19/+71
The code refactored in a way to call custom handler that can do appropriate cleanup work (if any), like flushing buffers, finishing compress streams, finalizing connections to log daemon, etc..
2012-12-23Access log: fixed redundant buffer reallocation.Valentin Bartenev1-5/+9
Previously a new buffer was allocated for every "access_log" directive with the same file path and "buffer=" parameters, while only one buffer per file is used.
2012-10-29Variables $connection and $connection_requests.Maxim Dounin1-23/+0
Log module counterparts are removed as they aren't used often and there is no need to preserve them for efficiency.
2012-10-03Log: $apache_bytes_sent removed.Maxim Dounin1-8/+0
It was renamed to $body_bytes_sent in nginx 0.3.10 and the old name is deprecated since then.
2012-07-24Fixed compilation with -Wmissing-prototypes.Ruslan Ermilov1-1/+1
2012-06-18New core variable: $status.Andrey Belov1-4/+1
Contains response status code as a 3-digit integer (with leading zeroes if necessary), or one of the following values: 000 - response status code has not yet been assigned 009 - HTTP/0.9 request is being processed
2012-05-16Zero padded the returned and logged HTTP status code, and fixed possibleRuslan Ermilov1-2/+2
buffer overrun in $status handling.
2012-03-15- New variable: $connection_requests.Ruslan Ermilov1-1/+13
- While here, fixed format specifier for $connection.
2012-02-28Fixed spelling in single-line comments.Ruslan Ermilov1-9/+9
2012-02-27Disable symlinks: initialization of the "disable_symlinks" field inValentin Bartenev1-6/+10
ngx_open_file_info_t moved to a separate function. This is preparation for the "from=" parameter implementation of the "disable_symlinks" directive.
2012-02-13Support for disable_symlinks in various modules.Andrey Belov1-2/+8
2012-02-13Time parsing cleanup.Maxim Dounin1-2/+2
Nuke NGX_PARSE_LARGE_TIME, it's not used since 0.6.30. The only error ngx_parse_time() can currently return is NGX_ERROR, check it explicitly and make sure to cast it to appropriate type (either time_t or ngx_msec_t) to avoid signedness warnings on platforms with unsigned time_t (notably QNX).
2012-01-18Copyright updated.Maxim Konovalov1-0/+1
2011-12-06- Improved error message when parsing of the "buffer" parameter of theRuslan Ermilov1-1/+7
"access_log" directive fails. - Added a warning if "log_format" is used in contexts other than "http".
2011-10-11Improved access log escaping to better protect other software.Maxim Dounin1-5/+5
Some character sets (notably ISO-8859-1) have C1 control characters in upper half, make sure to escape them. Reported by Jesus Olmos Gonzalez.
2011-09-19Replaced "can not" with "cannot" and "could not" in a bunch of places.Ruslan Ermilov1-1/+1
Fixed nearby grammar errors.
2011-08-03removal of error message about %name log_format parameters,Igor Sysoev1-19/+0
they have been deleted long ago in 0.5.0-RELEASE
2011-03-16$time_iso8601 log variableIgor Sysoev1-0/+10
patch by Michael Lustfield
2010-05-14ngx_str_set() and ngx_str_null()Igor Sysoev1-4/+2
2010-05-14use ngx_min() and ngx_max()Igor Sysoev1-1/+1
2009-11-29log proxied HTTP/0.9 responses status as "009"Igor Sysoev1-2/+19
2009-11-02optimize some cycles:Igor Sysoev1-3/+5
*) delete surplus variable; *) on i386/amd64 "while (n) / n--" is smaller than "while (n--)", because the platforms have no postfix operations
2009-09-11style fixIgor Sysoev1-1/+1
2009-08-23strict testing "access_log off"Igor Sysoev1-1/+7
2009-06-02return NULL instead of NGX_CONF_ERROR on a create conf failureIgor Sysoev1-5/+5
2009-04-27*) of.test_only to not open file if only stat() is enoughIgor Sysoev1-1/+3
*) of.failed to return exact name of failed syscall
2009-02-24small optimization: " == NGX_ERROR" > " != NGX_OK"Igor Sysoev1-1/+1
2008-10-16NGX_OPEN_FILE_DIRECTIO_OFFIgor Sysoev1-1/+1
2008-09-27*) log_subrequestIgor Sysoev1-12/+33
*) flush variables in access log
2008-09-12disable directio for access_log with variablesIgor Sysoev1-0/+1
2008-09-05remove unused #include'sIgor Sysoev1-1/+0
2008-07-07always test root existence for access_log with variablesIgor Sysoev1-4/+19
2008-07-01NULL script in default access_logIgor Sysoev1-0/+1