로깅 (macOS)

순환 진단 파일 로그 (Debug 패널)

OpenClaw는 swift-log를 통해 macOS 앱 로그를 라우팅하고 (기본적으로 unified logging 사용), 내구성 있는 캡처가 필요할 때 로컬 순환 파일 로그를 디스크에 작성할 수 있습니다.

  • 상세도: Debug 패널 → Logs → App logging → Verbosity
  • 활성화: Debug 패널 → Logs → App logging → "Write rolling diagnostics log (JSONL)"
  • 위치: ~/Library/Logs/OpenClaw/diagnostics.jsonl (자동 순환; 오래된 파일은 .1, .2, … 접미사가 붙음)
  • 지우기: Debug 패널 → Logs → App logging → "Clear"

참고사항:

  • 이는 기본적으로 꺼져 있습니다. 적극적으로 디버깅할 때만 활성화하세요.
  • 파일을 민감한 것으로 취급하세요; 검토 없이 공유하지 마세요.

macOS의 Unified logging 개인 데이터

Unified logging은 서브시스템이 privacy -off를 선택하지 않는 한 대부분의 페이로드를 편집합니다. macOS logging privacy shenanigans (2025)에 대한 Peter의 글에 따르면, 이는 서브시스템 이름으로 키가 지정된 /Library/Preferences/Logging/Subsystems/의 plist로 제어됩니다. 새 로그 항목만 플래그를 적용하므로, 문제를 재현하기 전에 활성화하세요.

OpenClaw (bot.molt)에 활성화

  • 먼저 임시 파일에 plist를 작성한 다음, root로 원자적으로 설치합니다:
cat <<'EOF' >/tmp/bot.molt.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>DEFAULT-OPTIONS</key>
    <dict>
        <key>Enable-Private-Data</key>
        <true/>
    </dict>
</dict>
</plist>
EOF
sudo install -m 644 -o root -g wheel /tmp/bot.molt.plist /Library/Preferences/Logging/Subsystems/bot.molt.plist
  • 재부팅이 필요하지 않습니다; logd가 파일을 빠르게 감지하지만, 새 로그 라인만 개인 페이로드를 포함합니다.
  • 기존 헬퍼로 더 풍부한 출력을 확인하세요, 예: ./scripts/clawlog.sh --category WebChat --last 5m.

디버깅 후 비활성화

  • 오버라이드 제거: sudo rm /Library/Preferences/Logging/Subsystems/bot.molt.plist.
  • 선택적으로 sudo log config --reload를 실행하여 logd가 즉시 오버라이드를 삭제하도록 강제합니다.
  • 이 인터페이스는 전화번호와 메시지 본문을 포함할 수 있으므로, 추가 세부 정보가 적극적으로 필요할 때만 plist를 유지하세요.