Hello all, I have this example nginx.conf: https://gist.github.com/MarioIshac/e6971ab0b343da210de62ebb1c6e2f99 to reproduce the behavior.
I start nginx and an example upstream with: python3 -u -m http.server 8001 > app.log 2>&1 & sudo nginx > nginx.log 2>&1 Upon hitting nginx with `curl -i localhost:8000`, I see these response headers: X-Trip-Time: 0.001 X-Addr: 127.0.0.1:8001 X-Status: 200 X-Process-Time: - `cat app.log` shows that upstream was hit successfully, and `cat nginx.log` shows that nginx knows the $upstream_response_time at log time, as I get this log: 127.0.0.1:8001 200 0.004 Why does nginx substitute the request time and relevant response metadata (like $upstream_status) at add_header time successfully, yet substitutes the upstream response time with a dash? My goal with returning $upstream_response_time in a header is so the client can know how much of their request latency was due to their upload speeds vs. server processing time. -Mario Posted at Nginx Forum: https://forum.nginx.org/read.php?2,290674,290674#msg-290674 _______________________________________________ nginx mailing list nginx@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx