Logging(macOS)
ローテーションする診断用ファイルログ(Debugペイン)
OpenClawはmacOS app logsを swift-log 経由で処理し(デフォルトではunified logging)、必要に応じて、永続的に取得できるローカルのローテーションファイルログをディスクへ書き出せます。- 詳細度: Debug pane → Logs → App logging → Verbosity
- 有効化: Debug pane → Logs → App logging → 「Write rolling diagnostics log (JSONL)」
- 場所:
~/Library/Logs/OpenClaw/diagnostics.jsonl(自動でローテーションされます。古いファイルには.1,.2, … の接尾辞が付きます) - クリア: Debug pane → Logs → App logging → 「Clear」
- これはデフォルトでは無効です。積極的にデバッグしている間だけ有効にしてください。
- このファイルは機微情報として扱い、確認せずに共有しないでください。
macOSでのUnified loggingのprivate data
Unified loggingは、subsystemがprivacy -off にオプトインしない限り、ほとんどのpayloadをredactします。PeterのmacOSにおける logging privacy shenanigans(2025年)の記事によると、これはsubsystem名をキーとする /Library/Preferences/Logging/Subsystems/ 配下のplistで制御されます。フラグが反映されるのは新しいログエントリだけなので、問題を再現する前に有効化してください。
OpenClaw(ai.openclaw)で有効にする
- まずplistを一時ファイルへ書き出し、その後rootでatomicにインストールします:
- 再起動は不要です。logdはこのファイルにすぐ気付きますが、private payloadsを含むのは新しいログ行だけです。
- 詳細な出力は、既存のヘルパーで確認できます。たとえば
./scripts/clawlog.sh --category WebChat --last 5m。
デバッグ後に無効化する
- 上書きを削除します:
sudo rm /Library/Preferences/Logging/Subsystems/ai.openclaw.plist。 - 必要なら、
sudo log config --reloadを実行して、logdに即座に上書きを破棄させます。 - この面には電話番号やメッセージ本文が含まれうることを忘れないでください。追加の詳細が本当に必要な間だけ、このplistを残してください。