GitHub

📊 観測コマンド

JSON-RPCイベントとシステム状態を確認するための6つのコマンド

view (v) - イベントタイムライン

用途: JSON-RPCイベントを時系列で表示

基本使用法

pfscan view              # 最新20件のイベント表示
pfscan v                 # 短縮形
pfscan                   # デフォルトコマンド(viewと同じ)

主なオプション

オプション説明
--limit N 表示件数を指定 pfscan view --limit 50
--since <time> 指定時間以降のイベント pfscan view --since 24h
pfscan view --since 7d
--errors エラーのみ表示 pfscan view --errors
--method <name> メソッド名でフィルタ pfscan view --method tools
--connector <id> コネクターでフィルタ pfscan view --connector time
--session <id> セッションでフィルタ pfscan view --session abc123
-f, --follow リアルタイム監視 pfscan view -f
--fulltime 完全なタイムスタンプ表示 pfscan view --fulltime
--pairs リクエスト/レスポンスペア表示 pfscan view --pairs
--export <file> CSV出力 pfscan view --export events.csv
--json JSON形式出力 pfscan view --json

出力形式

Time         Sym Dir St Method              Session      Extra
-------------------------------------------------------------------
21:01:58.743 → → ✓ initialize            f2442c... lat=269ms
21:01:59.018 ← ← ✓ initialize            f2442c...
21:01:59.025 • →   notifications/init... f2442c...
21:01:59.037 → → ✓ tools/list            f2442c...
21:01:59.049 ← ← ✓ tools/list            f2442c... lat=12ms size=1.0KB

イベントシンボル

シンボル意味
セッション開始
セッション終了
リクエスト(Client → Server)
レスポンス(Server → Client)
通知(Notification)
エラー

実践例

# 過去1時間のイベントを100件表示
pfscan view --since 1h --limit 100

# エラーのみを詳細タイムスタンプ付きで表示
pfscan view --errors --fulltime

# 特定コネクターの最新30件
pfscan view --connector time --limit 30

# リアルタイム監視(特定コネクターのみ)
pfscan view -f --connector time

# JSON形式でエクスポート
pfscan view --limit 1000 --json > events.json

tree (t) - 階層構造表示

用途: コネクター → セッション → RPC の階層を視覚化

基本使用法

pfscan tree              # 全コネクターのツリー表示
pfscan tree time         # 特定コネクターのみ
pfscan t                 # 短縮形

主なオプション

オプション説明
--sessions N 表示セッション数 pfscan tree --sessions 10
--rpc N 表示RPC数 pfscan tree --rpc 20
--rpc-all 全RPC表示 pfscan tree --rpc-all
--method <name> メソッドでフィルタ pfscan tree --method init
--status <type> ステータスでフィルタ (ok/err/all) pfscan tree --status ok
--compact コンパクト表示(アイコンなし) pfscan tree --compact
--since <time> 時間でフィルタ pfscan tree --since 24h

出力例

└── 📦 time
    ├── 📋 f2442c9b... (2 rpcs, 8 events)
    │   ├── ↔️ ✓ tools/list (id=2, 12ms)
    │   └── ↔️ ✓ initialize (id=1, 269ms)
    └── 📋 3cf5a66e... (2 rpcs, 8 events)
        ├── ↔️ ✓ tools/list (id=2, 13ms)
        └── ↔️ ✓ initialize (id=1, 271ms)

1 connector(s), 2 session(s), 4 rpc(s)

rpc - RPC詳細表示

用途: 特定のRPC呼び出しの詳細情報を表示

基本使用法

pfscan rpc <rpc-id>                    # RPC ID指定
pfscan rpc --session abc123 --id 2    # セッション+ID指定
pfscan rpc --raw                       # 生データ表示

status (st) - システムステータス

用途: データベースとシステムの状態を確認

基本使用法

pfscan status            # システム概要
pfscan st                # 短縮形
pfscan status --detailed # 詳細情報
pfscan status --db       # DB統計のみ

表示情報

summary - セッションサマリー

用途: セッションの要約と能力を表示

基本使用法

pfscan summary <session-id>        # セッション要約
pfscan summary --connector time    # コネクター指定

表示情報

analyze - ツール使用分析

用途: ツールの使用状況を分析

基本使用法

pfscan analyze                     # 全ツール分析
pfscan analyze --connector time    # 特定コネクター
pfscan analyze --verbose           # 詳細統計

分析内容

使用のヒント

💡 パフォーマンス監視

レイテンシが高いRPCを特定:

pfscan view --since 24h | grep "lat=[0-9]\{3,\}ms"
💡 エラー追跡

エラーをリアルタイムで監視:

pfscan view -f --errors --fulltime
💡 セッション比較

複数セッションのRPC数を比較:

pfscan tree --rpc-all | grep "rpcs"