Логирование (macOS)
Диагностический файл лога с ротацией (панель Debug)
OpenClaw направляет логи приложения macOS через 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»
- По умолчанию выключено. Включайте только на время активной отладки.
- Считайте файл чувствительным; не делитесь им без проверки.
Приватные данные unified logging в macOS
Unified logging скрывает большинство полезной нагрузки, если подсистема явно не включаетprivacy -off. Согласно материалу Питера о macOS logging privacy shenanigans (2025), это управляется plist-файлом в /Library/Preferences/Logging/Subsystems/, ключируемым по имени подсистемы. Флаг применяется только к новым записям логов, поэтому включайте его до воспроизведения проблемы.
Включение для OpenClaw (bot.molt)
- Сначала запишите plist во временный файл, затем установите его атомарно от имени root:
- Перезагрузка не требуется; logd быстро обнаруживает файл, однако только новые строки логов будут содержать приватную полезную нагрузку.
- Просматривайте более подробный вывод с помощью существующего хелпера, например
./scripts/clawlog.sh --category WebChat --last 5m.
Отключение после отладки
- Удалите переопределение:
sudo rm /Library/Preferences/Logging/Subsystems/bot.molt.plist. - При необходимости выполните
sudo log config --reload, чтобы принудительно заставить logd немедленно сбросить переопределение. - Помните, что этот механизм может включать номера телефонов и тела сообщений; держите plist на месте только пока вам действительно нужна дополнительная детализация.