4.2.9 プロキシトレースの採取
プロキシトレースとは,リバースプロキシ機能を使用している場合に採取される,次のトレースのことです。
-
バックエンドサーバへの接続処理開始時
-
バックエンドサーバへの接続処理終了時
-
バックエンドサーバへのリクエストの転送処理開始時
-
バックエンドサーバからのレスポンス受信処理開始時
HWSRequestLogディレクティブが指定されている場合,かつHWSRequestLogTypeディレクティブでproxyを指定した場合に有効となります。バックエンドサーバへリクエストを転送する場合に,処理状況の把握に有用です。
- 〈この項の構成〉
(1) トレースフォーマット
プロキシトレースの出力項目は次のとおりです。
なお,以降の記述で「サーバプロセスID」となっている部分はUNIX版でprefork MPMを使用している場合のフォーマットであり,UNIX版のworker MPMでは「サーバプロセスID:サーバスレッドID」,Windows版の場合「サーバスレッドID」です。
-
接続処理開始時
[時刻]△(サーバプロセスID)△(ルートアプリケーション情報)△proxy△接続先IPアドレス:接続先ポート番号△:△connect
-
接続処理終了時(接続成功時)
[時刻]△(サーバプロセスID)△(ルートアプリケーション情報)△proxy△接続先IPアドレス:接続先ポート番号△:△connect(O)
-
接続処理終了時(接続失敗時)
[時刻]△(サーバプロセスID)△(ルートアプリケーション情報)△proxy△接続先IPアドレス:接続先ポート番号△:△connect(X)
-
リクエスト転送処理開始時
HTTP/1.1以前の場合
[時刻]△(サーバプロセスID)△(ルートアプリケーション情報)△proxy△接続先IPアドレス:接続先ポート番号△:△req△send(タイプ)(Content-Lengthヘッダ値)
HTTP/2の場合
[時刻]△(サーバプロセスID)△(ルートアプリケーション情報)△proxy△接続先IPアドレス:接続先ポート番号△:△req△send
タイプは次の3種類です。
CHUNK:チャンク形式で転送する方式
CL:Content-Lengthサイズ分転送を繰り返す方式
SPOOL:一時ファイルにボディを保存して,まとめて転送する方式
Content-Lengthヘッダ値が存在しない場合には,"-"を出力します。
-
レスポンス受信処理開始時
[時刻]△(プロセスID)△(ルートアプリケーション情報)△proxy△接続先IPアドレス:接続先ポート番号△:△res△recv
- (凡例)
-
△:空白
- (出力例)
[Thu Aug 29 11:03:58.639 2013] (21999) (192.168.0.33/250/0x0000000000000001) proxy 192.168.1.5:80 : connect [Thu Aug 29 11:03:58.639 2013] (21999) (192.168.0.33/250/0x0000000000000001) proxy 192.168.1.5:80 : connect(O) [Thu Aug 29 11:03:58.639 2013] (21999) (192.168.0.33/250/0x0000000000000001) proxy 192.168.1.5:80 : req send(CL)(4096) [Thu Aug 29 11:03:58.682 2013] (21999) (192.168.0.33/250/0x0000000000000001) proxy 192.168.1.5:80 : res recv