ファイル名
trace.log
出力内容
クライアントからのリクエストに対するWebコンテナ内の処理状態が出力されます。
仕様
HTTPトレースログを出力する設定にした時に、HTTPトレースログファイルが作成されます。同名のファイルが存在する場合は追加出力されます。
HTTPトレースログの出力先は以下となります。
[ログ出力ディレクトリ]\http
[ログ出力ディレクトリ]/http
ログ出力ディレクトリについては、「5.13 Java EEアプリケーションのログ」の「ログファイルの出力先」を参照してください。
書き込みやローテーションの処理が失敗した場合、サーバーログにエラーメッセージが出力されます。
設定方法
HTTPトレースログの設定項目は、asadminコマンドにより変更可能です。
トレースログ
HTTPアクセスログの出力を有効にするかを指定します。
その他の設定項目は、「8.4.3 HTTPサービスの定義項目」を参照してください。
asadminコマンドのsetサブコマンド
「configs.config.http-serviceの定義項目」の「トレースログ」
詳細は、「9.1 asadmin」を参照してください。
出力フォーマット
HTTPトレースログとして出力されるログの形式を、以下に示します。
出力形式:
"日時" "スレッドID(スレッド名)" "イベント" "詳細情報" |
HTTPトレースログの出力日時
処理スレッドのスレッドID
処理スレッドのスレッド名
出力タイミングを表すイベント名
各出力タイミングにおける出力内容を以下に示します。
出力タイミング | イベント | 詳細情報 |
---|---|---|
TCPコネクション接続時 | conn | クライアント(注1)のIPアドレス、ポート番号 |
TCPコネクション切断時 | disc | クライアント(注1)のIPアドレス、ポート番号 |
HTTPリクエスト受信時 | recv | リクエストライン |
HTTPレスポンス送信時 | send | ステータスコード |
Webコンテナの呼び出し時 | call | なし |
Webコンテナからの復帰時 | rtn | なし |
接続キューへの挿入時 | qin | クライアント(注1)のIPアドレス、ポート番号 |
接続キューあふれ発生時 | q-overflow | クライアント(注1)のIPアドレス、ポート番号 |
接続キューからの取出し時 | qout | クライアント(注1)のIPアドレス、ポート番号 |
キープアライブ待ち開始時 | k-wt | クライアント(注1)のIPアドレス、ポート番号 |
Webコンテナの非同期処理開始直後 | async-start | 呼び出し元のスレッドID(スレッド名)(注2)、リクエストURI(注3) |
Webコンテナの非同期処理終了直前 | async-end | なし |
注1) クライアントとは、Webブラウザ、プロキシサーバなどを指します。
注2) "async-start"、"async-end"以外のイベントで出力されるスレッドID(スレッド名)
注3) Webアプリケーションで以下のServlet APIを呼んだ場合、"async-start"の詳細情報は出力されません。
javax.servlet.AsyncContext#start(java.lang.Runnable)
注意
HTTPトレースログの出力を有効にしている場合、性能に影響があります。影響の程度は、アプリケーション、環境/運用、処理多重度、負荷等に依存します。
今後、改善や機能追加により、出力タイミングや出力内容が変更される可能性があります。そのため、出力内容に依存した運用は避けてください。
出力例
出力例を以下に示します。
"07/Jun/2012:23:20:27.063" "22(Grizzly-kernel-thread(1))" "conn" "/127.0.0.1:58018" |