# HG changeset patch # User Yaroslav Zhuravlev # Date 1428490612 -10800 # Node ID c79501e16e26c7a6b2a99606ca4da3b54461b722 # Parent d3390895fe6e2337a51984612d6aaafb37f709e4 Documented cyclic memory buffer support for error_log. diff -r d3390895fe6e -r c79501e16e26 xml/en/docs/debugging_log.xml --- a/xml/en/docs/debugging_log.xml Wed Apr 08 13:49:40 2015 +0300 +++ b/xml/en/docs/debugging_log.xml Wed Apr 08 13:56:52 2015 +0300 @@ -8,7 +8,7 @@
+ rev="3">
@@ -82,4 +82,30 @@
+ +
+ + +The debugging log can be written to a cyclic memory buffer: + +error_log memory:32m debug; + +Logging to the memory buffer on the debug level +does not have significant impact on performance even under high load. +In this case, the log can be extracted using +a gdb script like the following one: + +set $log = ngx_cycle->new_log + +while $log.writer != ngx_log_memory_writer + set $log = $log.next +end + +set $buf = (ngx_buf_t *) $log.wdata +dump binary memory log.txt $buf->start $buf->end + + + +
+
diff -r d3390895fe6e -r c79501e16e26 xml/en/docs/ngx_core_module.xml --- a/xml/en/docs/ngx_core_module.xml Wed Apr 08 13:49:40 2015 +0300 +++ b/xml/en/docs/ngx_core_module.xml Wed Apr 08 13:56:52 2015 +0300 @@ -10,7 +10,7 @@ + rev="12">
@@ -145,7 +145,8 @@ file | stderr | -syslog:server=address[,parameter=value] +syslog:server=address[,parameter=value] | +memory:size [debug | info | notice | @@ -173,6 +174,10 @@ The special value stderr selects the standard error file. Logging to syslog can be configured by specifying the “syslog:” prefix. +Logging to a +cyclic memory buffer +can be configured by specifying the “memory:” prefix and +buffer size, and is generally used for debugging (1.7.11). diff -r d3390895fe6e -r c79501e16e26 xml/ru/docs/debugging_log.xml --- a/xml/ru/docs/debugging_log.xml Wed Apr 08 13:49:40 2015 +0300 +++ b/xml/ru/docs/debugging_log.xml Wed Apr 08 13:56:52 2015 +0300 @@ -8,7 +8,7 @@
+ rev="3">
@@ -80,4 +80,31 @@
+ +
+ + +Отладочный лог можно записывать в кольцевой буфер в памяти: + +error_log memory:32m debug; + +Запись в буфер в памяти на уровне debug +не оказывает существенного влияния на производительность +даже при высоких нагрузках. +В этом случае лог может быть извлечён при помощи +gdb-скрипта, подобного следующему: + +set $log = ngx_cycle->new_log + +while $log.writer != ngx_log_memory_writer + set $log = $log.next +end + +set $buf = (ngx_buf_t *) $log.wdata +dump binary memory log.txt $buf->start $buf->end + + + +
+
diff -r d3390895fe6e -r c79501e16e26 xml/ru/docs/ngx_core_module.xml --- a/xml/ru/docs/ngx_core_module.xml Wed Apr 08 13:49:40 2015 +0300 +++ b/xml/ru/docs/ngx_core_module.xml Wed Apr 08 13:56:52 2015 +0300 @@ -10,7 +10,7 @@ + rev="12">
@@ -145,7 +145,8 @@ файл | stderr | -syslog:server=адрес[,параметр=значение] +syslog:server=адрес[,параметр=значение] | +memory:размер [debug | info | notice | @@ -173,6 +174,10 @@ Специальное значение stderr выбирает стандартный файл ошибок. Запись в syslog настраивается указанием префикса “syslog:”. +Запись в +кольцевой буфер в памяти +настраивается указанием префикса “memory:” и +размера буфера и как правило используется для отладки (1.7.11).