ログ記録 (macOS)
ローリング診断ファイルログ (デバッグペイン)
macOSアプリは swift-log (デフォルトでは統合ログ) を通じてログを記録し、永続的に取得するためのローテーション式ローカルファイルログ (DiagnosticsFileLog) も書き込めます。
- 有効化: デバッグペイン -> ログ -> アプリログ記録 -> 「ローリング診断ログ (JSONL) を書き込む」 (デフォルトではオフ)。
- 詳細度: デバッグペイン -> ログ -> アプリログ記録 -> 詳細度 ピッカー。
- 場所:
~/Library/Logs/OpenClaw/diagnostics.jsonl。 - ローテーション: 5 MBでローテーションし、
.1….5というサフィックス付きのバックアップを最大5個まで保持します (最も古いものは削除されます)。 - 消去: デバッグペイン -> ログ -> アプリログ記録 -> 「消去」 は、アクティブなファイルとすべてのバックアップを削除します。
macOSの統合ログにおけるプライベートデータ
統合ログは、サブシステムがprivacy -off を明示的に有効化していない限り、ほとんどのペイロードを秘匿します。これは /Library/Preferences/Logging/Subsystems/ 内の plist によって制御され、サブシステム名をキーにします。このフラグは新しいログエントリにのみ反映されるため、問題を再現する前に有効化してください。背景: macOSログプライバシーの仕組み。
OpenClaw (ai.openclaw) で有効化する
まず plist を一時ファイルに書き込み、その後 root としてアトミックにインストールします。
./scripts/clawlog.sh --category WebChat --last 5m で表示できます (--last/-l は時間範囲を設定し、デフォルトは 5m、--category/-c はカテゴリでフィルタします)。
デバッグ後に無効化する
- オーバーライドを削除します:
sudo rm /Library/Preferences/Logging/Subsystems/ai.openclaw.plist。 - 必要に応じて
sudo log config --reloadを実行し、logd にオーバーライドを即座に破棄させます。 - この領域には電話番号やメッセージ本文が含まれる可能性があります。plist は実際に必要な間だけ配置しておいてください。