Уровни журнала в Nginx: NGX_LOG_DEBUG_HTTP против NGX_LOG_DEBUG - PullRequest
1 голос
/ 07 апреля 2020

Я проверяю некоторый код Nginx, в частности код для модуля Nginx - проверка работоспособности в восходящем направлении . В некоторых местах я вижу NGX_LOG_DEBUG_HTTP как уровень ведения журнала, в других NGX_LOG_DEBUG. Может кто-нибудь сказать мне, какой уровень ведения журнала рекомендуется использовать в каком сценарии?

1 Ответ

0 голосов
/ 07 апреля 2020

Эта ссылка содержит необходимую информацию. Вот несколько сценариев ios, чтобы объяснить, как это работает:

Если ваш nginx.conf имеет уровень журнала, определенный как обобщенный c debug

error_log error.log debug;

, тогда все ваши записи с уровнями отладки с префиксом NGX_LOG_DEBUG будут зарегистрированы. Например,

ngx_log_debug(NGX_LOG_DEBUG, event->log, 0, "test"); ngx_log_debug(NGX_LOG_DEBUG_HTTP, event->log, 0, "test"); ngx_log_debug(NGX_LOG_DEBUG_CORE, event->log, 0, "test");

Но если ваш nginx.conf настроен на запись определенного типа отладочного сообщения c, будут регистрироваться только те из них.

Так , с этим конфигом:

error_log error.log debug_http;

это произойдет:

ngx_log_debug(NGX_LOG_DEBUG_CORE, event->log, 0, "test"); //will not show up in the log
ngx_log_debug(NGX_LOG_DEBUG_HTTP, event->log, 0, "test"); //will show up in the log
...