Трейсы и приватность
Какие метаданные сохраняет Cloud trace и какие данные в него не попадают.
Cloud trace показывает форму исполнения без содержимого диалога. Вы видите вызванный обработчик, инструмент, модель, длительность и статус.
Что сохраняется
Платформа принимает закрытый набор метаданных:
- имя и статус runtime span;
- модель и провайдер;
- число входных и выходных токенов;
- задержка модели и общая длительность;
- номер итерации агентного цикла;
- имя и статус инструмента;
- имя воркфлоу;
- HTTP status и категория ошибки;
- канал и alias интеграции.
Значения проходят проверку длины, формата и допустимого диапазона. Другие поля отбрасываются до записи.
Что не сохраняется
Cloud trace store не принимает:
- текст сообщений и промптов;
- инструкции и мысли модели;
- сгенерированный код;
- вход и выход инструмента;
- состояние бота;
- URL, query, request body и response body;
- raw error;
- токены и другие credentials.
Эта граница применяется при записи. Чтение повторно проецирует ответ на тот же allowlist.
Лимиты ingestion
Один OTLP-запрос может содержать до 16 resourceSpans, 64 scopeSpans и 256
spans. Размер body ограничен 1 MiB, число attributes одного resource или span —
64. Превышение лимита возвращает 413 без частичной записи.
Отдельные хранилища
Trace privacy не означает, что содержимого нет во всей платформе. Сообщения, event payloads и application logs хранятся отдельно и имеют собственные правила доступа и retention.
Не записывайте чувствительные данные в console.log() и произвольные события.
Trace projector не может очистить хранилище, которым управляет код бота.
Локальная диагностика
Inspector внутри brt dev может показывать message previews, tool input/output
и state. Эти данные нужны для локальной отладки и не отправляются в Cloud trace
store.
Считайте локальный trace чувствительным артефактом:
- не коммитьте дампы;
- не отправляйте их в общий telemetry endpoint;
- удаляйте после диагностики;
- перед публикацией проверяйте содержимое вручную.
Чтение через CLI
brt traces --conversation-id "$CONVERSATION_ID"Cloud API требует область одного диалога. Списки используют pageSize и
nextToken. Фильтры по status, workflow, action и времени применяются до
пагинации.
brt conversations list показывает ограниченные метаданные. brt conversations show <id> строит timeline из безопасной trace-проекции. Команды
не возвращают сообщения, prompts, tool input/output и raw errors.
Hosted evals
Eval store сохраняет только операционные метаданные: ID, tags, статусы, assertion kind, score и duration. Prompts, сообщения, model responses, evidence и raw errors в него не попадают.
Каждый eval run становится недоступен через 30 дней. Фоновая очистка удаляет истёкшие runs и связанные результаты.
Эта же проекция используется на экране Evals в консоли. Инспектор показывает вердикты и тайминги, но не имеет скрытого доступа к содержимому диалога. Автоматического сравнения с baseline и перехода от assertion к trace сейчас нет.
Доступ
Production-запрос получает область из ключа бота. Dev-запрос использует PAT и проверенный dev target. Консоль дополнительно проверяет членство пользователя в воркспейсе и принадлежность бота.
Не передавайте workspace authority через произвольный query-параметр. Scope определяется токеном и выбранным target.
Retention
Трейсы предназначены для диагностики, а не для постоянного хранения прикладных данных. Не стройте бизнес-логику на наличии trace row.
Если проекту нужен собственный журнал, создайте таблицу с явной схемой, retention и правилами доступа.