Opened 4 months ago

Closed 4 months ago

Last modified 4 months ago

#1997 closed defect (invalid)

Error nginx: [emerg] unknown "upstream_first_byte_time" variable

Reported by: opiumfor@… Owned by:
Priority: major Milestone:
Component: nginx-module Version: 1.19.x
Keywords: ngx_stream_upstream_module Cc:
uname -a: Linux 03870119ec4e 5.4.0-33-generic #37-Ubuntu SMP Thu May 21 12:53:59 UTC 2020 x86_64 Linux
nginx -V: nginx version: nginx/1.19.0
built by gcc 9.2.0 (Alpine 9.2.0)
built with OpenSSL 1.1.1d 10 Sep 2019 (running with OpenSSL 1.1.1g 21 Apr 2020)
TLS SNI support enabled
configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --with-perl_modules_path=/usr/lib/perl5/vendor_perl --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-cc-opt='-Os -fomit-frame-pointer' --with-ld-opt=-Wl,--as-needed

Description

Hello!

I've added the $upstream_first_byte_time to my log format in nginx.conf like this:

log_format json escape=json
...here goes some other fields...
'"upstream_first_byte_time": "$upstream_first_byte_time", '
...here goes some other fields...
;

But unfortunately the output of "nginx -V && nginx -T" is:

nginx version: nginx/1.19.0
built by gcc 9.2.0 (Alpine 9.2.0)
built with OpenSSL 1.1.1d 10 Sep 2019 (running with OpenSSL 1.1.1g 21 Apr 2020)
TLS SNI support enabled
configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --with-perl_modules_path=/usr/lib/perl5/vendor_perl --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-cc-opt='-Os -fomit-frame-pointer' --with-ld-opt=-Wl,--as-needed

2020/06/05 13:49:21 [emerg] 1#1: unknown "upstream_first_byte_time" variable
nginx: [emerg] unknown "upstream_first_byte_time" variable
nginx: configuration file /etc/nginx/nginx.conf test failed

What I am doing wrong?

Change History (2)

comment:1 by Maxim Dounin, 4 months ago

Resolution: invalid
Status: newclosed

The $upstream_first_byte_time variable in only available in the stream module. For http, consider using the $upstream_header_time variable instead.

For further questions on how to configure nginx, please consider support options available.

comment:2 by opiumfor@…, 4 months ago

Thanks, Maxim, it's clear now. But this should probably be covered little bit more in documentation because it confused me why the other variables are worked as expected, for example the upstream_connect_time and so on.

Last edited 4 months ago by opiumfor@… (previous) (diff)
Note: See TracTickets for help on using tickets.