FAQ — счётчик полевых метрик (field/RUM)
FAQ — счётчик полевых метрик (field/RUM)
Короткие ответы на частые вопросы. Детали — в
install-rum-js.md,metrics.md,troubleshooting.md.
Токен — это секрет? Его можно публиковать в HTML?
Нет, это не секрет. Токен проекта — публичный идентификатор только для записи событий (аналогично идентификатору сайта у Google Analytics или Plausible). Он виден в HTML, и это нормально. При этом токен не даёт доступ на чтение данных проекта. Значение токена при этом не попадает в журналы.
Можно ли скачать скрипт и положить его к себе на сайт?
Нет. Скрипт раздаётся из сервиса, а на сайт встраивается типовой блок (по принципу счётчиков Яндекс.Метрики / Google Analytics). Самостоятельный хостинг файла не поддерживается.
Где взять код встраивания?
Готовый типовой блок — в install-rum-js.md §3; подставьте свой
токен проекта. Готовый блок с кнопкой «Скопировать» прямо на странице проекта — в
разработке.
Как получить токен, если в интерфейсе этого пока нет?
Токен выдаётся для проекта в личном кабинете. Если выдача в вашем интерфейсе ещё не появилась — обратитесь к администратору аккаунта.
Почему адрес сервиса должен быть абсолютным?
По умолчанию счётчик использует относительный путь /v1/rum. На вашем сайте он
укажет на ваш домен, и данные уйдут в никуда. Всегда указывайте
https://seo-tools.velizarov.ru/v1/rum.
Нужен ли дополнительный код для SPA?
Нет. Счётчик сам обрабатывает переходы внутри одностраничных приложений
(перехват изменения адреса и отправку при уходе со страницы). Подробнее —
install-rum-js.md §5.
Счётчик ставит cookie?
Нет. Cookie не используются вообще. Для сессий применяется эфемерный
идентификатор в памяти вкладки: он живёт до закрытия вкладки и перестаёт действовать
после 30 минут бездействия, не связывается с персональными данными. См.
metrics.md §5.
Нужен ли consent-баннер и поддержка DNT/GPC?
Сейчас автоматической привязки к согласию и учёта сигналов «не отслеживать» нет
(🟡 планируется). До реализации подключайте счётчик после получения согласия —
вставляя тег <script> динамически. См. install-rum-js.md §7.
Почему при переходе внутри SPA нет TTFB и FCP?
У перехода внутри приложения нет данных навигации, поэтому эти метрики не
собираются. При таком переходе отправляются просмотр и метрики, привязанные к
просмотру страницы (CLS, INP, длительные задачи, время блокировки). Это
ожидаемое поведение.
Почему RES_BYTES меньше реального веса страницы?
У сторонних ресурсов без заголовка Timing-Allow-Origin объём недоступен счётчику.
Такие ресурсы учитываются отдельно (RES_XORIGIN). Чтобы видеть объём сторонних
ресурсов — добавьте заголовок Timing-Allow-Origin на их ответы.
Как понять, что данные реально идут?
Самый надёжный признак — время последнего использования токена в личном кабинете:
оно обновляется, когда события доходят. Дополнительно: в инструментах разработчика
запрос POST /v1/rum должен получать 200 {"ok":true}. Чек-лист —
install-rum-js.md §8.
Почему «сегодня» на странице аналитики пусто?
Агрегация выполняется по UTC-дню и с задержкой: данные за текущий день могут быть неполными. Смотрите предыдущий UTC-день.
Можно ли одним токеном покрыть несколько сайтов?
Технически — да, но данные разных сайтов смешаются в одном проекте. Практика:
один сайт = свой токен; для нескольких площадок используйте разные метки
(например, prod, staging, demo).
Как отключить сбор, не удаляя токен?
Есть два уровня: выключить отдельный токен (мягкое выключение — токен остаётся, но события не принимаются) или выключить приём событий для всего проекта. Управление доступно в личном кабинете.
Что делать, если токен «утёк»?
Замените токен (ротация) и обновите код встраивания на сайте, при необходимости — отзовите старый. Так как токен даёт только право записи, риск ограничен потоком посторонних событий в проект.