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だったからか同じ数値になった。
以上。