HARファイルビューアー

HARはこのブラウザー内に留まります。アップロード、Livewire経由の送信、URLへの挿入は行われません。

HARファイルには、パスワード、セッションCookie、認証トークン、クエリ値、レスポンス本文が含まれる場合があります。可能な限りサニタイズ済みのキャプチャを使用してください。

ステップ 1 / 3HARファイルビューアー

HARキャプチャを開く

HARファイルを読み込んでいます…

HTTP Archiveをアップロードせずに確認できます。このブラウザ内HARビューアーは、リクエスト、ステータスコード、転送サイズ、ホスト、タイミングの各フェーズをまとめ、個々のエントリを検索・確認できます。機密性の高いヘッダーとURLのすべてのクエリ値は初期状態で非表示です。20 MiBまたは25,000リクエストまでの記録に対応し、作業データはブラウザ内に留まります。

使い方

  1. 1

    記録を開く

    .harまたは.jsonファイルを選択するかドロップします。HARログとリクエスト数の上限はブラウザ内で検証されます。

  2. 2

    リクエストを探す

    概要を確認し、メソッド、マスク済みURL、ステータス、コンテンツタイプで検索し、複数のフィルターを組み合わせます。

  3. 3

    確認または書き出し

    リクエスト/レスポンスヘッダーとタイミングを確認し、サニタイズ済みのCSVまたはJSON概要をダウンロードします。

HARファイルに含まれるもの

HARはHTTP Archiveの略で、ブラウザのネットワークログを交換するためのJSON形式です。ページが送ったリクエスト、受信したレスポンス、ヘッダーのメタデータ、サイズ、タイミングの内訳が記録されます。Chrome DevToolsのNetwork機能リファレンスでは、サニタイズ済みHARと機密データを含むHARの保存方法が説明されています。Firefoxのネットワークモニターのリクエスト一覧には、Save All as HARImport HARがあります。フィールド構造はHAR 1.2仕様に準拠します。

このビューアーはlog.entriesを読み取ります。リクエストとレスポンスの両方がない不正なエントリは、内容を推測せずに除外します。省略可能なフィールドは存在しないことがあるため、記録されていないサイズ、時刻、フェーズは「利用不可」のままです。ステータスコードを補ったり、不明な所要時間をゼロに置き換えたりしません。

概要の読み方

概要では、判明している値と記録されていない値を区別します。転送サイズには、有効な0以上の数値であればブラウザ固有の_transferSizeを使います。それ以外では、両方が判明している場合に限りheadersSize + bodySizeを使います。圧縮、ヘッダー、キャッシュ、プロトコルのオーバーヘッドにより値が異なるため、レスポンスのコンテンツサイズを転送バイト数とは見なしません。

項目 意味 重要な制約
リクエスト log.entries内の利用可能なエントリ 不正なエントリは除外件数として報告
転送量 判明している転送サイズの合計 不明なサイズは別に集計
ウォーターフォール範囲 最も早い有効な開始から、最後に記録された終了まで 開始時刻がない項目は正確に配置できない
ステータスグループ 記録された2xx、3xx、4xx、5xxレスポンス ステータスがなければ利用不可のまま
ホスト 解析できた一意のホスト名 無効または相対URLにはホストがない場合がある

検索は大文字と小文字を区別しない文字列検索です。[.*などを正規表現として解釈しません。フィルターは表示中のリクエスト一覧と書き出す行だけを変更し、記録全体の集計値は変えません。

タイミングの扱い

HARでは通常、blockeddnsconnectsslsendwaitreceiveをミリ秒で記録します。-1は、そのフェーズが利用できないことを表します。-1未満、数値でない値、有限でない数値も利用不可として扱います。

通常、sslconnectの一部であり、その後に加わる別フェーズではありません。そのため代替所要時間は、blocked、DNS、connect、send、wait、receiveを合計し、SSLを二重に加算しません。報告された合計と利用可能なフェーズの合計に大きな差がある場合は、記録値を勝手に修正せず、報告された合計を保ったうえで警告を表示します。経過時間には一定の時間方向があるため、アラビア語ページを含めウォーターフォールは常に左から右へ表示します。

プライバシーと安全な取り扱い

HARには、ログイン中のセッションを乗っ取れるほどの情報が含まれる場合があります。Chromeも、サニタイズ済みの書き出しと、CookieSet-CookieAuthorizationを含む書き出しを明確に区別しています。このビューアーは、それらのヘッダー、プロキシ認証、APIキーに似たヘッダー、URLの全クエリ値を初期状態でマスクします。ヘッダーの表示は、利用者が明示的に行うローカル操作です。読み込んだ文字列はテキストとして描画するため、URLやヘッダー内のマークアップは実行されません。

作業用モデルには、リクエスト本文、レスポンス本文、postData、Cookie配列を保持しません。複数ステップのフローでは、このブラウザタブ用にサイズ制限された本文なしのプロジェクトをIndexedDBへ保存し、内容を示さないタブマーカーから参照します。保存内容は2時間で期限切れになります。リクエストの再送、記録されたホストへの接続、Livewire経由のHAR送信は行いません。「最初からやり直す」と保存プロジェクトを削除します。

書き出されるのは元の記録の複製ではなく概要です。URLのクエリ値はマスクされたままで、ヘッダー値と本文は除外され、CSVセルは表計算ソフトの数式実行から保護されます。現在のフィルターに一致するリクエスト行だけが含まれます。それでも、共有前には必ず確認してください。ホスト名、パス、ステータスの傾向から内部システムが推測される可能性があります。

実用的な手順

  1. 可能ならブラウザのサニタイズ済みHAR書き出しを使用します。
  2. 問題が起きるページ操作だけを再現し、すぐに記録を止めます。
  3. ここで記録を開き、ステータス、ホストのパス、コンテンツタイプで絞り込みます。
  4. 長い待機時間をDNS、接続、受信と比較します。ただし、ブラウザやプロキシが一部フェーズを記録しない場合があります。
  5. 診断に必要なサニタイズ済み概要だけを共有し、相手と転送経路を信頼できない限り元の記録は共有しません。

よくある質問

いいえ。解析、絞り込み、詳細確認、書き出しはブラウザ内で行われます。ファイルがLivewire経由で送信されたり、ページURLに含まれたりすることはありません。

HARには、セッションCookie、Bearerトークン、APIキー、機密性の高いクエリパラメーターが含まれることがあります。意図しない漏えいを減らすため、全クエリ値と認識されたセキュリティ関連ヘッダーを初期状態で隠します。

ブラウザや記録ツールがHARの省略可能なフィールドをすべて記録するとは限りません。このビューアーは推測したゼロを表示せず、その不確実性を保ちます。

通常は加算されません。HARのSSLは接続フェーズの一部なので、代替合計に二重加算しません。

いいえ。記録されたホストへの接続やリクエストの再送は意図的に行いません。ネットワーク動作を再現する必要がある場合は、権限のある環境でDevToolsを使用してください。

関連ツール