日志(macOS)
滚动诊断文件日志(调试面板)
OpenClaw 通过 swift-log 路由 macOS 应用日志(默认使用统一日志),并且在你需要持久化捕获时,可以将本地的滚动文件日志写入磁盘。- Verbosity: Debug pane → Logs → App logging → Verbosity
- Enable: Debug pane → Logs → App logging → “Write rolling diagnostics log (JSONL)”
- Location:
~/Library/Logs/OpenClaw/diagnostics.jsonl(rotates automatically; old files are suffixed with.1,.2, …) - Clear: Debug pane → Logs → App logging → “Clear”
- 这项功能默认关闭。仅在主动调试时启用。
- 请将该文件视为敏感信息;未经审查不要共享。
macOS 上的统一日志私有数据
统一日志会对大多数负载内容进行脱敏,除非某个子系统选择启用privacy -off。根据 Peter 关于 macOS 日志隐私乱象 的文章(2025),这由 /Library/Preferences/Logging/Subsystems/ 中一个以子系统名称为键的 plist 控制。只有新的日志条目才会应用该标志,因此请在复现问题之前启用它。
为 OpenClaw(ai.openclaw)启用
- 先将 plist 写入临时文件,然后以 root 身份原子性地安装它:
- 不需要重启;logd 很快就会注意到该文件,但只有新的日志行才会包含私有负载。
- 使用现有的辅助工具查看更丰富的输出,例如
./scripts/clawlog.sh --category WebChat --last 5m。
调试后禁用
- 删除覆盖:
sudo rm /Library/Preferences/Logging/Subsystems/ai.openclaw.plist。 - 也可以运行
sudo log config --reload,强制 logd 立即放弃该覆盖。 - 请记住,这一范围可能包含电话号码和消息正文;仅在你确实需要额外细节时才保留该 plist。