コンテンツへ移動

クイックスタート

この手順では、対応する Linux ホスト上で平文 HTTP/1.1 アプリケーションを command mode で監視します。監視するアプリケーションに合わせて ./my-app を置き換えてください。

Terminal window
chronicle doctor

記録を始める前に、プラットフォーム、cgroup、BTF、capability、組み込みプログラムについて報告された問題を修正してください。doctor はホストを変更しません。

Terminal window
chronicle record --name checkout -- ./my-app

Chronicle は先にキャプチャをアタッチしてからアプリケーションを起動します。アプリケーションが終了したとき、Ctrl+C を押したとき、または明示的な --duration が満了したときに記録を停止します。実行中は別のターミナルから代表的なリクエストを送ってください。

--duration を指定しない場合、記録はアプリケーションの終了または停止まで続きます。WAL の物理容量上限は epoch ごとに 4 GiB で、親 recording に合計上限はありません。

Terminal window
chronicle list
chronicle inspect checkout

記録は latestrec_<uuid>、UUID 単体、または完全一致する名前で指定できます。inspect はエンドポイント、操作、loss warning、リプレイ可能性を要約しますが、キャプチャした body や任意のヘッダー値は表示しません。

Terminal window
chronicle replay checkout -- ./my-app

command mode はターゲットを起動する前に計画を完了し、その scope が所有する loopback listener を 1 つ検出します。ターゲットに依存しない policy check を通過した後にだけリプレイします。所有する listener に対する実行と読み取りは自動的に認可されます。書き込みなどの操作と他の効果は、明示的に認可しない限り拒否されたままです。

すでに起動しているアプリケーションには、loopback の IP リテラルと必要なすべての gate を指定した explicit target mode だけを使用してください。

Terminal window
chronicle replay checkout \
--target http://127.0.0.1:8080 \
--allow-host 127.0.0.1 \
--allow-read \
--execute

書き込み操作を許可する場合に限り --allow-write を追加してください。Chronicle は記録された production 宛先へフォールバックしません。

すべての公開コマンドはグローバルな format オプションを受け付けます。

Terminal window
chronicle --format json list
chronicle --format json inspect checkout
chronicle --format json replay checkout -- ./my-app

JSON 出力は上限付きの操作が完了した後に生成されます。ツール連携には JSON を使い、対話的な診断には人間向けの出力を使ってください。