web-dev-qa-db-ja.com

Nginxのアクセスログの列を理解する

このアプリのアクセスログIP、日付、リクエスト、応答コードのすべての列を理解しています。次の列が理解できないものを除きます(以下の例では、177、4223、4356)。これは何の略ですか?

66.249.65.159 - - [06/Nov/2014:19:10:38 +0600] "GET /news/53f8d72920ba2744fe873ebc.html HTTP/1.1" 404 177 "-" "Mozilla/5.0 (iPhone; CPU iPhone OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5376e Safari/8536.25 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
66.249.65.3 - - [06/Nov/2014:19:11:24 +0600] "GET /?q=%E0%A6%AB%E0%A6%BE%E0%A7%9F%E0%A6%BE%E0%A6%B0 HTTP/1.1" 200 4223 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
66.249.65.62 - - [06/Nov/2014:19:12:14 +0600] "GET /?q=%E0%A6%A6%E0%A7%8B%E0%A7%9F%E0%A6%BE HTTP/1.1" 200 4356 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"

編集:Googleで検索しましたが、答えが見つかりませんでした。

23
Dewsworld

「応答コード」(ステータス)の後の列は「送信バイト数」です。

Nginxのデフォルトのログ形式は「結合」と呼ばれます。次の構成と同等です。

# nginx.conf
http {
  ...
  log_format combined '$remote_addr - $remote_user [$time_local] '
                      '"$request" $status $body_bytes_sent '
                      '"$http_referer" "$http_user_agent"';
  ...
}

ソース:モジュールngx_http_log_module

30
stevendaniels

あなたの与えられた例では、

177、4223、4356は、HTTPヘッダーを除く、送信されたバイト数を示します。

ApacheとNGINXの両方が提供するデフォルトのログはほとんど同じです。変数の命名規則は異なりますが、利用可能な情報は比較的同じです。

1
Shree