upstream_response_time

nginxにおいて表題の件。

■ 環境

  • nginx 1.12.2

■ upstream

upstream“モジュールを使ってproxyしている。処理時間を出したいなと思い調べてみると”log_format“に”upstream_response_time“を出力すれば良いようだ。

Module ngx_http_upstream_module
https://nginx.org/en/docs/http/ngx_http_upstream_module.html

log_format main '$http_x_forwarded_for - $remote_user [$time_local] '
                '"$request" $status $body_bytes_sent '
                '"$http_referer" "$http_user_agent" '
                '$request_time $upstream_response_time';

ログファイルには下記のようになった。

XX.XX.XX.XX - - [19/Feb/2018:19:08:51 +0900] "GET /login HTTP/1.1" 200 2175 "http://example.com/login/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36" 0.043 0.043

今回は同一ホスト内へのproxyだったからか同じ数値になった。

以上。

■ 関連

nginxで処理時間をログに出力