CLI commands

Записи аудита

openclaw audit

Запрашивайте журнал аудита Gateway, содержащий только метаданные, для запусков агентов, действий инструментов и регистрируемых по явному согласию событий жизненного цикла сообщений.

Журнал по умолчанию включён для событий запусков и инструментов. Задайте audit.enabled: false и перезапустите Gateway, чтобы прекратить запись всех новых событий. Запись событий сообщений отдельно отключена по умолчанию; задайте для audit.messages значение direct или all и перезапустите Gateway, чтобы записывать их. Существующие записи остаются доступными для запросов до истечения срока их хранения (30 дней).

Журнал существует отдельно от расшифровок разговоров: он записывает идентичность, порядок, происхождение, действие, статус и нормализованные коды результатов, но никогда не хранит содержимое, а идентификаторы сообщений представлены только локальными для установки ключевыми псевдонимами. В разделе История аудита описаны полная модель данных, семантика конфиденциальности, ограничения хранения и срока хранения, а также пределы охвата; на этой странице рассматривается интерфейс команд.

bash
openclaw auditopenclaw audit --agent main --status failedopenclaw audit --session "agent:main:main" --after 2026-07-01T00:00:00Zopenclaw audit --run 8c69f72e-8b11-4c54-98d5-1a3dd67450c3openclaw audit --kind tool_action --limit 50 --jsonopenclaw audit --kind message --direction outbound --channel telegram --json

Фильтры

  • --agent <id>: точный идентификатор агента
  • --session <key>: точный ключ сеанса
  • --run <id>: точный идентификатор запуска
  • --kind <kind>: agent_run, tool_action или message
  • --status <status>: started, succeeded, failed, cancelled, timed_out, blocked или unknown
  • --direction <direction>: направление сообщения, inbound или outbound
  • --channel <channel>: точный канал сообщения
  • --after <timestamp> / --before <timestamp>: включительная временная метка ISO или время Unix в миллисекундах
  • --limit <count>: размер страницы от 1 до 500; по умолчанию 100
  • --cursor <sequence>: продолжить предыдущий запрос с сортировкой от новых записей к старым
  • --json: вывести ограниченную страницу в формате JSON

CLI обращается к версионированному RPC активности, поэтому одна команда показывает весь настроенный журнал. Текстовый вывод содержит время, тип, направление, канал, статус, агента, запуск и действие. Отсутствующее происхождение сообщения отображается как -; OpenClaw не создаёт вымышленные идентификаторы агентов или запусков. Для действий инструментов также отображается имя инструмента. Вывод JSON содержит nextCursor, если существует следующая страница. Передайте это значение параметру --cursor, чтобы продолжить без изменения порядка записей, поступивших во время постраничного просмотра.

Эти экспортированные данные остаются конфиденциальными операционными метаданными, хотя тела сообщений и необработанные поля идентификации сообщений отсутствуют. Идентификаторы агентов, сеансов и запусков, время, каналы, результаты и стабильные ссылки HMAC позволяют сопоставлять действия. Защищайте их с помощью тех же средств управления доступом и правил хранения, что и другие операторские записи.

Записываемые события

Gateway преобразует доверенные потоки жизненного цикла в шесть действий:

  • agent.run.started
  • agent.run.finished
  • tool.action.started
  • tool.action.finished
  • message.inbound.processed
  • message.outbound.finished

Каждая возвращаемая запись содержит стабильный идентификатор события, монотонно возрастающий порядковый номер в журнале, временную метку жизненного цикла, субъекта, действие, статус, маркер schemaVersion: 1, порядковый номер источника и redaction: "metadata_only". Данные о происхождении агента, сеанса и запуска, а также поля конкретного события присутствуют только тогда, когда их предоставляет доверенный источник. В записях сообщений намеренно отсутствуют sessionKey и sessionId, поэтому фильтры --session применяются только к записям запусков и инструментов.

Терминальные записи запусков и инструментов различают успешное завершение, сбой, отмену, тайм-аут и блокировки политиками с помощью закрытого статуса и кодов ошибок. unknown — это явный неуспешный результат, когда вышестоящая среда выполнения не предоставляет достоверный терминальный результат. Идентификаторы вызовов инструментов экспортируются только как стабильные отпечатки. Имена инструментов должны соответствовать контракту компактных имён, доступных модели; другие значения преобразуются в unknown.

Записи сообщений дополнительно содержат направление, канал, тип разговора, результат и необязательные тип доставки, этап сбоя, длительность, количество результатов, нормализованный код причины и ключевые псевдонимы учётной записи, разговора, сообщения и адресата. Текущая граница входящих сообщений охватывает принятые сообщения, которые достигают основной диспетчеризации, включая результаты обработки дубликатов и терминальной обработки в ядре. На границе исходящих сообщений записывается одна терминальная строка для каждого исходного логического содержимого ответа, достигшего общей надёжной доставки; разбиение на части и разветвление адаптером агрегируются в resultCount. Поставленные в очередь повторяемые или неоднозначные отправки записываются только после того, как подтверждение, попадание в очередь недоставленных сообщений или сверка делает результат терминальным. Локальные для плагина и прямые пути отправки, обходящие эти общие границы, пока не охвачены; отсутствие строки не доказывает, что сообщения не существовало.

Журнал аудита не заменяет расшифровки, историю задач, историю запусков Cron или журналы. Он предоставляет небольшой межзапусковый индекс для операторских запросов без копирования содержимого разговоров в другое хранилище.

Для входящих строк durationMs измеряет диспетчеризацию ядра, а resultCount подсчитывает завершённые поставленные в очередь полезные нагрузки инструментов, блокировок и ответов. Для исходящих строк durationMs охватывает владение доставкой до её терминального результата (и, следовательно, время ожидания в очереди), а resultCount подсчитывает идентифицированные физические отправки на платформу. deliveryKind, когда присутствует, описывает фактическую полезную нагрузку после хуков и рендеринга; подавленные строки и строки с неоднозначным результатом из-за сбоя не содержат этого поля.

RPC Gateway

audit.activity.list требует operator.read и принимает те же фильтры. Он возвращает именованное объединение событий активности V1, включая записи запусков, инструментов, входящих и исходящих сообщений.

bash
openclaw gateway call audit.activity.list --params '{"channel":"telegram","limit":50}'

Результат — { "events": AuditActivityEventV1[], "nextCursor"?: string }. Результаты отсортированы от новых к старым и ограничены 500 записями на запрос.

Поставляемый RPC audit.list остаётся без изменений для старых клиентов запусков и инструментов. Когда audit.activity.list недоступен в старой версии Gateway, CLI повторяет запрос через audit.list только в том случае, если каждый запрошенный фильтр поддерживается этим устаревшим методом. --kind message, --direction и --channel завершаются ошибкой с сообщением о необходимости обновления в старой версии Gateway, а не молча отбрасываются.

Связанные разделы

Was this useful?
On this page

On this page