[PATCH 2 of 2] Added config path when unknown variable error occurs
Maxim Dounin
mdounin at mdounin.ru
Thu Feb 9 08:20:42 UTC 2023
Hello!
On Wed, Feb 08, 2023 at 06:54:07PM +0300, Safar Safarly via nginx-devel wrote:
> # HG changeset patch
> # User Safar Safarly <hafl at me.com>
> # Date 1675853769 -10800
> # Wed Feb 08 13:56:09 2023 +0300
> # Node ID 1396218aa1296ffc9776644534a1541b78a460a0
> # Parent 55553146bd984be7e9e3bbfa851c282feda82d93
> Added config path when unknown variable error occurs
>
> Previously, when unknown variable occured, error was logged with
> ngx_log_error():
>
> nginx: [emerg] unknown "rate" variable
>
> instead of ngx_conf_log_error():
>
> nginx: [emerg] unknown "rate" variable in /conf/nginx.conf:27
>
> diff -r 55553146bd98 -r 1396218aa129 src/http/ngx_http_variables.c
> --- a/src/http/ngx_http_variables.c Tue Feb 07 17:24:26 2023 +0300
> +++ b/src/http/ngx_http_variables.c Wed Feb 08 13:56:09 2023 +0300
> @@ -2792,8 +2792,8 @@
> }
>
> if (v[i].get_handler == NULL) {
> - ngx_log_error(NGX_LOG_EMERG, cf->log, 0,
> - "unknown \"%V\" variable", &v[i].name);
> + ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,
> + "unknown \"%V\" variable", &v[i].name);
>
> return NGX_ERROR;
> }
> diff -r 55553146bd98 -r 1396218aa129 src/stream/ngx_stream_variables.c
> --- a/src/stream/ngx_stream_variables.c Tue Feb 07 17:24:26 2023 +0300
> +++ b/src/stream/ngx_stream_variables.c Wed Feb 08 13:56:09 2023 +0300
> @@ -1277,8 +1277,8 @@
> }
>
> if (v[i].get_handler == NULL) {
> - ngx_log_error(NGX_LOG_EMERG, cf->log, 0,
> - "unknown \"%V\" variable", &v[i].name);
> + ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,
> + "unknown \"%V\" variable", &v[i].name);
> return NGX_ERROR;
> }
>
The ngx_http_variables_init_vars() function you are patching is
called when the http block is fully parsed, and therefore
ngx_conf_log_error() will always point to the end of the http
block. This provides no usable information, so ngx_log_error() is
used instead.
--
Maxim Dounin
http://mdounin.ru/
More information about the nginx-devel
mailing list