Skip to main content
Флаги диагностики включают дополнительное журналирование для одной подсистемы, не повышая logging.level глобально. Флаг не действует, если подсистема его не проверяет.

Как это работает

  • Флаги — это строки без учета регистра, получаемые из diagnostics.flags в конфигурации с учетом переопределения переменной окружения OPENCLAW_DIAGNOSTICS, с удалением дубликатов и приведением к нижнему регистру.
  • name.* соответствует самому name и всему, что находится под name. (например, telegram.* соответствует telegram.http).
  • * или all включает все флаги.
  • Перезапустите Gateway после изменения diagnostics.flags в конфигурации; оно не применяется без перезапуска.

Известные флаги

Включение через конфигурацию

Несколько флагов:

Переопределение переменной окружения (однократное)

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

Флаги профилировщика

Флаги профилировщика управляют легковесными интервалами измерения времени; в выключенном состоянии они не создают накладных расходов. Включить все интервалы, управляемые профилировщиком, для одного запуска Gateway:
Включить только интервалы профилировщика диспетчеризации ответов:
Включить только интервалы профилировщика запуска, инструментов и потоков сервера приложений Codex:
profiler включает и профилировщик ответов, и профилировщик Codex; используйте имена флагов с областью действия, чтобы включить только один из них. Или задайте их в конфигурации:
Перезапустите Gateway после изменения флагов конфигурации. Чтобы отключить флаг профилировщика, удалите его из diagnostics.flags и перезапустите Gateway либо запустите процесс с OPENCLAW_DIAGNOSTICS=0, чтобы переопределить все флаги диагностики для этого запуска.

Артефакты временной шкалы

Флаг timeline (псевдоним: diagnostics.timeline) записывает структурированные события времени запуска и выполнения в формате JSONL для внешних средств автоматизации контроля качества:
Или включите его в конфигурации:
Путь вывода всегда берется из OPENCLAW_DIAGNOSTICS_TIMELINE_PATH, даже если сам флаг задан в конфигурации; ключа конфигурации для пути нет. Если timeline включен только в конфигурации, самые ранние интервалы загрузки конфигурации отсутствуют, поскольку OpenClaw еще не прочитал конфигурацию; последующие интервалы запуска фиксируются как обычно. OPENCLAW_DIAGNOSTICS=1, =all и =* также включают временную шкалу, поскольку они включают все флаги. Используйте флаг с областью действия timeline, если вам нужен только артефакт JSONL, а не все остальные флаги диагностики. Для выборок задержки цикла событий во временной шкале требуется еще одно явное включение помимо timeline: задайте OPENCLAW_DIAGNOSTICS_EVENT_LOOP=1 (или on/true/yes) в дополнение к включению временной шкалы. Записи временной шкалы используют оболочку openclaw.diagnostics.v1 и могут включать идентификаторы процессов, имена фаз, имена интервалов, длительности, идентификаторы плагинов, количество зависимостей, выборки задержки цикла событий, имена операций провайдера, состояние завершения дочерних процессов, а также имена и сообщения ошибок запуска. Считайте файлы временной шкалы локальными диагностическими артефактами; проверяйте их перед передачей за пределы своего компьютера.

Куда записываются журналы

Флаги записывают сообщения в стандартный файл журнала диагностики. По умолчанию:
Если задан logging.file, вместо этого используется указанный в нем путь. Журналы имеют формат JSONL (один объект JSON на строку). Редактирование конфиденциальных данных по-прежнему применяется на основе logging.redactSensitive. Полное описание определения пути журнала, ротации и редактирования конфиденциальных данных см. в разделе Журналирование.

Извлечение журналов

Выбрать последний файл журнала:
Отфильтровать HTTP-диагностику Telegram:
Отфильтровать HTTP-диагностику Brave Search:
Или отслеживать журнал во время воспроизведения:
Для удаленных экземпляров Gateway вместо этого используйте openclaw logs --follow (см. /cli/logs).

Примечания

  • Если logging.level задан выше warn, сообщения журналов, управляемые флагами, могут подавляться. Значение info по умолчанию подходит.
  • brave.http журналирует URL-адреса и параметры запросов Brave Search, состояние и время ответов, а также события попадания в кеш, промаха кеша и записи в кеш. Он не журналирует ключ API (передаваемый в заголовке запроса) или тела ответов, однако поисковые запросы могут содержать конфиденциальные данные.
  • Флаги можно безопасно оставлять включенными; они влияют только на объем журналов соответствующей подсистемы.
  • Используйте /logging, чтобы изменить места назначения журналов, уровни и редактирование конфиденциальных данных.

Связанные материалы