ホームページ  >  記事  >  運用・保守  >  nginxログの読み方

nginxログの読み方

青灯夜游
青灯夜游オリジナル
2019-06-06 18:08:406670ブラウズ

nginx ログには、アクセス ログとエラー ログの 2 つの主な種類があります。アクセス ログは主にクライアントが nginx にアクセスするすべてのリクエストを記録し、形式はカスタマイズ可能です。エラー ログは主にクライアントが nginx にアクセスしてエラーが発生したときのログを記録し、形式はカスタマイズをサポートしていません。オプションで両方のログをオフにすることができます。

nginxログの読み方

アクセス ログを通じて、ユーザーの地理的出身地、ジャンプ元、使用端末、特定の URL への訪問回数などの関連情報を取得できます。エラー ログを参照すると、システム内の特定のサービスまたはサーバーのパフォーマンスのボトルネックを取得できます。したがって、ログをうまく活用することで、多くの貴重な情報を得ることができます。

#アクセス ログ

[Access.log]

##

log_format  main  '$remote_addr $remote_user [$time_local] "$request" $http_host '
                  '$status $upstream_status $body_bytes_sent "$http_referer" '
                  '"$http_user_agent" $ssl_protocol $ssl_cipher $upstream_addr '
                  '$request_time $upstream_response_time';
説明:


#変数名変数の説明例##113.140. 15.90$remote_user##$time_localHTTPHTTP##アップストリームステータス ジャンプソース##SSLTLSv1 $ssl_cipher$upstream_addr

$remote_addr

クライアント アドレス

クライアント ユーザー名

-

アクセス時間とタイムゾーン

18/Jul/ 2012:17:00:01 0800

##リクエスト

リクエストされたURI および

プロトコル

"GET / pa/img/home/logo-alipay-t.png HTTP/1.1"

$http_host

#リクエスト アドレスは、ブラウザに入力したアドレス (#IP またはドメイン名)

#img.alipay.com

##10.253.70.103

$ステータス

リクエスト ステータス

#200

$アップストリームステータス

##200

#$body_bytes_sent

送信されるファイル コンテンツのサイズ。 client

547

#$http_referer

"https://cashier.alilipay.com.../"

##$http_user_agent

ユーザー ターミナル エージェント

「Mozilla/4.0 (互換性; MSIE 8.0; Windows NT 5.1 ; Trident/4.0; SV1; GTB7.0; .NET4.0C;

#$ssl_protocol

プロトコル バージョン

交換データのアルゴリズム

#RC4-SHA

バックグラウンドのアドレスupstream

、つまり実際にサービスを提供するホストのアドレス

10.228.35.247:80

##$request_time

リクエスト全体の合計時間

0.205

##$upstream_response_time

リクエスト中、upstream応答時間

##0.002

注: $http_host の値は、ブラウザに入力した値に関連しています。

#エラー ログ

##エラー メッセージ「アップストリームが時期尚早に (時期尚早に) ##uri をリクエストするときに発生する例外は、「recv() が失敗しました (104: ピアによって接続がリセットされました)」nginx が upstreamアップストリーム ##アップストリームは接続をリセットするために #RST を送信しましたbody が設定値

#エラーの説明

接続が閉じられました」

upstream がユーザーに応答を返さなかったときにユーザーが切断することによって発生します。システムには影響せず、無視できます

#(1) サーバーの同時接続数がその容量を超えたため、サーバーは

一部の接続をダウンします;

(2) クライアントはブラウザを閉じましたが、サーバーはまだクライアントにデータを送信しています;

(3) ブラウザが # をクリックしました##Stop

"(111: 接続が拒否されました) アップストリームへの接続中に"
# ユーザーが接続しているときに、バックエンド

アップストリームがハングするかブロックされると、ユーザーは次のエラーを受け取ります

"(111: 接続が拒否されました) アップストリームからの応答ヘッダーの読み取り中に"

ユーザーが接続に成功した後にデータを読み取るとき、ユーザーがバックエンドに遭遇した場合

アップストリームがハングアップするか利用できません。アップストリームにリクエストを送信中に、次のエラーが発生します

##"(111: 接続が拒否されました) 「

Nginx と

upstream が正常に接続されてデータを送信しているときに、バックエンド upstream がハングするか利用できない場合、このエラーが表示されます。

"(110: 接続がタイムアウトしました) アップストリームへの接続中に"

後続の

upstream

に接続するときに nginx がタイムアウトしました「(110: 接続がタイムアウトしました) アップストリームの読み取り中に」

#アップストリームからの応答の読み取り中に nginx がタイムアウトしました

#"(110: 接続がタイムアウトしました) 上流からの応答ヘッダーの読み取り中に"

からの応答ヘッダーの読み取り中にタイムアウトしました"(110: 接続がタイムアウトしました) アップストリームの読み取り中に"

## からの応答の読み取り中に nginx がタイムアウトしました

#"(104: ピアによる接続リセット) アップストリームへの接続中"

#「アップストリームは応答ヘッダーの読み取り中に無効なヘッダーを送信しました」アップストリームから "

アップストリームから送信された応答ヘッダーが無効です

「アップストリームからの応答ヘッダーの読み取り中に、アップストリームは有効な HTTP/1.0 ヘッダーを送信しませんでした」

#アップストリームから送信された応答ヘッダーは無効です

##「クライアントが大きすぎる本文を送信することを意図している」

は、クライアントのリクエストを設定するために使用されます。コンテンツの最大値、デフォルト値は 1M、

クライアントによって送信された
## を超えています

「ログを再度開く」

#ユーザーが kill -USR1 コマンドを送信

"gracefully shutting down",

用户发送kill  -WINCH命令

"no servers are inside upstream"

upstream下未配置server

"no live upstreams while connecting to upstream"

upstream下的server全都挂了

"SSL_do_handshake() failed"

SSL握手失败

"SSL_write() failed (SSL:) while sending to client"

 

"(13: Permission denied) while reading upstream"

 

"(98: Address already in use) while connecting to upstream"

 

"(99: Cannot assign requested address) while connecting to upstream"

 

"ngx_slab_alloc() failed: no memory in SSL session shared cache"

ssl_session_cache大小不够等原因造成

"could not add new SSL session to the session cache while SSL handshaking"

ssl_session_cache大小不够等原因造成

"send() failed (111: Connection refused)"

 

 

以上がnginxログの読み方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。