Здравствуйте.<br><br>Написал простенький handler, но почему-то не получается писать из него логи с помощью ngx_log_error. nginx запускается с директивой &quot;daemon off&quot;; в других местах (например в ngx_http_test_merge_loc_conf) ngx_log_error работает как надо.<br>
<br>Делал так. Когда встречается директива &quot;mytest&quot;:<br><br>static ngx_command_t&nbsp; ngx_http_test_commands[] = {<br>&nbsp;&nbsp;&nbsp; // Install http-handler&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>
&nbsp;&nbsp;&nbsp; { ngx_string(&quot;mytest&quot;),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NGX_HTTP_MAIN_CONF|NGX_CONF_NOARGS,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ngx_http_test_install_handler, // &lt;&lt;---------------------------------<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NGX_HTTP_LOC_CONF_OFFSET,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NULL },<br>
// ...<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ngx_null_command<br>}<br><br>Запускается установщик обработчика:<br><br>static char* ngx_http_test_install_handler(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)<br>{<br>&nbsp; ngx_http_core_loc_conf_t* clcf = static_cast&lt;ngx_http_core_loc_conf_t*&gt;(ngx_http_conf_get_module_loc_conf(cf, ngx_http_core_module));<br>
&nbsp; clcf-&gt;handler = ngx_http_test_handler;<br><br>&nbsp; return NGX_CONF_OK;<br>}<br><br>Сам же обработчик выгладит очень просто:<br><br>static ngx_int_t ngx_http_test_handler(ngx_http_request_t *r)<br>{<br>&nbsp; ngx_log_error(NGX_LOG_ERR, r-&gt;connection-&gt;log, 0, &quot;test&quot;); // Это сообщение никогда не отображается<br>
&nbsp; return NGX_OK;<br>}<br><br>Я где-то ошибся? Пробовал устанавливать обработчик через ngx_http_test_init - не помогло.<br><br>--<br>С уважением,<br>Сергей Самохин.<br>