Повтор
Повтор сессий записывает то, что экран пользователя действительно делал: изменения DOM и взаимодействия, снятые SDK кусками и пересматриваемые в консоли. Запись включается на клиенте явно, ввод замаскирован по умолчанию.
At a glance
- Enable
createWebClient({ sessionReplay: true, replayHost })- Intake
POST /v1/replay, chunked, project key- Read
replaySessions,replayChunksover GraphQL- Masking
- Inputs masked by default, client-side
- Auth
- Project key to record, access token to watch
- Кусочная запись: рекордер получает нумерованные куски, так что вкладка, закрытая посреди сессии, оставляет все отправленное.
- Маскирование на стороне клиента: замаскированное содержимое никогда не покидает браузер, а не прячется при показе.
- Ссылки воспроизведения короткоживущие по замыслу; истекшая ссылка перевыпускается при перезагрузке, а не падает молча.
Как это работает
The web SDK records DOM mutations and interactions, serialises them into numbered chunks and posts each chunk to the recorder with the project key, flushing on an interval and on page hide. The replay processor stores the chunks with their session metadata: whose session, how many events, whether masking was on. The console lists sessions and plays one back by fetching its chunks through short-lived links, in order, so a recording streams rather than downloading whole.
Где обратиться
| Surface | Operation |
|---|---|
| REST | POST /v1/replay (recorder intake, project key) |
| GraphQL | replaySessions, replayChunks queries |
| Realtime | None: session lists read on demand |
| MCP | None |
Пример
import { createWebClient } from '@prodantix/sdk/web';
const prodantix = createWebClient({
apiKey: process.env.PRODANTIX_KEY,
replayHost: 'eu.replay.prodantix.com',
sessionReplay: true,
// Inputs are masked by default; widen or narrow with sessionReplayOptions.mask.
});Replay is a web SDK capability: recording needs a DOM, so the Dart and Python SDKs do not carry it. Watching back happens on the Replay screen.