WebSocket と SSE の履歴
WS/SSE 履歴は、プロキシを通過するすべての WebSocket 接続とサーバー送信イベント(Server-Sent Event)のストリームをキャプチャーします。個別のメッセージを確認し、内容や方向で絞り込み、メッセージを WS 再送に送れます。
接続の一覧
左側のパネルには、キャプチャーしたすべての接続が表示されます。
| 列 | 説明 |
|---|---|
| ホスト | この接続のリモートホスト。 |
| パス | アップグレードまたはイベントストリームのパス。 |
| メッセージ | メッセージ総数(WebSocket)またはイベント総数(SSE)。 |
| 開始 | 接続が確立された時点のタイムスタンプ。 |
| 終了 | 接続が閉じた時点のタイムスタンプ。まだ開いている場合は空欄。 |
| TLS | 接続が TLS を使用したかどうか。 |
接続をクリックすると、メッセージの一覧を開けます。
接続の絞り込み
接続一覧の上にあるフィルターバーで、表示を絞り込みます。
- ホスト - ホスト列の部分文字列で照合します。
- パス - パス列の部分文字列で照合します。
- TLS - TLS または非 TLS の接続だけを表示します。
- 診断対象範囲内 - ホストが現在の診断対象範囲に一致する接続だけを表示します。
- StreamQL - StreamQL 式を入力して、構造化された絞り込みを行います。
StreamQL 入力欄の横の AIボタンで、自然言語からクエリを生成できます。
メッセージの一覧
接続を選択すると、中央のパネルにそのメッセージが開きます。
| 列 | 説明 |
|---|---|
| 連番 | 接続の最初のメッセージを 1 とする連番。 |
| 方向 | C->S はクライアントからサーバー、S->C はサーバーからクライアント。 |
| オペコード | WebSocket のオペコード:text、binary、ping、pong、close。SSE の項目にはイベント名が表示されます。 |
| サイズ | ペイロードのサイズ。単位はバイトです。 |
| 時間 | メッセージの絶対タイムスタンプ。 |
| 差分時間 | 同じ接続の前のメッセージからの経過時間。 |
メッセージの絞り込み
メッセージ一覧の上にあるフィルターバーを使用します。
- 方向 - クライアントからサーバー、またはサーバーからクライアントのメッセージだけを表示します。
- オペコード - 特定のオペコードに絞り込みます(たとえば、
ping/pongだけを表示してキープアライブの動作を調べるか、それらを非表示にしてノイズを減らします)。 - 内容 - ペイロードの部分文字列で照合します。
- StreamQL - 構造化されたクエリ式。
メッセージの確認
メッセージの行をクリックすると、インスペクターパネルでペイロードを開けます。
- 整形タブは、構文ハイライトと折りたたみ可能なノードで JSON を表示します。
- 未加工タブは、変更されていないペイロードのバイト列を表示します。
- バイナリーフレームは十六進数で表示され、可能な場合は UTF-8 としての解釈が併記されます。
- クローズフレームには、ペイロードから解析したステータスコードと理由のフレーズが含まれます。
メッセージを WS 再送に送る
メッセージの行を右クリックして WS 再送に送るを選ぶと、WS 再送でメッセージを開けます。その接続のハンドシェイクリクエストを使って、再送の接続を確立します。
WS 再送では、ペイロードを変更して再送信したり、接続中の通信に新しいメッセージを挿入したりできます。
WS メッセージのエクスポート
- 接続一覧で接続を選択します。
- メッセージのエクスポートコントロールを開きます。
- JSON または CSV を選択します。
- ファイルを保存します。
エクスポートには、各メッセージの連番、方向、オペコード、タイムスタンプ、ペイロードが含まれます。
接続一覧の上にある CSV をエクスポートを使うと、メッセージのペイロードではなく接続のメタデータをエクスポートできます。キャプチャーした接続と WS 再送のセッションは別々の記録です。再送の応答は WS 再送のタイムラインに属し、このキャプチャー履歴の一覧には含まれません。