INTEGRITY Документация

RUM beacon для Web Analytics

RUM-маячок представляет собой фрагмент JavaScript, который запускается, когда клиент Cloudflare включает RUM через Web Analytics или Observatory. Этот скрипт выполняется в браузерах пользователей при посещении сайта клиента и предназначен для сбора данных о производительности, например времени загрузки страницы, и отправки их в системы Cloudflare для обработки. Этот данные затем предоставляется клиенту, давая ценную информацию о производительности и использовании сайта.

Скрипт RUM-маячка можно включить на веб-странице двумя способами:

Сбор данных

После загрузки в браузер скрипт RUM beacon запускается как JavaScript. Он собирает данные о производительности из браузерных API ↗ и отправляет эти данные в Cloudflare для обработки.

Данные, собранные из браузера, приведены в таблице ниже:

Поле Пример Описание Как выполняется сбор
pageloadId 0c698922-8d60-40bf-85ac-7982b5f8034d Уникальный идентификатор страницы. Формируется в коде браузера.
referrer https://cfrumtest.com/ ↗ URL страницы-источника перехода. Если это многостраничное приложение (MPA), оно генерируется из document.referrer ↗. Если это одностраничное приложение (SPA), значение формируется из локальной переменной в памяти в коде маяка (beacon), которая хранит предыдущие URL.
startTime 1693488419352 Базовая точка отсчета для временных меток, связанных с производительностью. performance.timeOrigin ↗
memory { totalJSHeapSize: 39973671, usedJSHeapSize: 39127515, jsHeapSizeLimit: 4294705152 } Измеряет размер кучи памяти. performance.memory ↗ (устарело)
timings Объект PerformanceTiming ↗ Данные о времени выполнения. performance.timing ↗ (устаревший, запасной вариант, если timingV2 недоступен)
timingV2 Массив PerformanceNavigationTiming ↗ Данные о времени навигации. performance.getEntriesByType("navigation") ↗
resources Массив PerformanceResourceTiming ↗ Данные о времени загрузки ресурсов. performance.getEntriesByType("resource") ↗
firstPaint Массив PerformancePaintTiming ↗ Данные о времени отрисовки (Paint Timing). performance.getEntriesByType("paint") ↗
firstContentfulPaint 209 Метрика First Contentful Paint. модуль web-vitals ↗ 1
FCP 209 Метрика First Contentful Paint. модуль web-vitals ↗ 1
LCP 209 Метрика Largest Contentful Paint. модуль web-vitals ↗ 1
CLS 0.001 метрика Cumulative Layout Shift. модуль web-vitals ↗ 1
TTFB 0.03 Показатель «Время до первого байта». модуль web-vitals ↗ 1
INP 1.23 метрика Interaction to Next Paint. модуль web-vitals ↗ 1
landingPath https://cfrumtest.com/ ↗ URL целевой страницы. performance.getEntriesByType("navigation") ↗

Обработка данных

Как правило, данные RUM обрабатываются в ближайшем дата-центре Cloudflare в зависимости от того, как маршрутизируется входящий запрос. Это зависит от ряда факторов, включая Anycast ↗ и Unimog ↗. Поскольку данные RUM не используют службы геолокации, они могут обрабатываться в другой стране или регионе, отличных от места происхождения. Хотя служба RUM получает IP-адрес клиента (источника) из маяка в рамках обычной обработки HTTP-запроса, она удаляет этот IP-адрес на ближайшем дата-центре Cloudflare и не сохраняет его в основных базах данных или журналах.

Информация о конфиденциальности

Скрипт RUM-маячка не сохраняет данные в браузере и не обращается к таким хранилищам данных, как файлы cookie ↗, localStorage ↗, sessionStorage ↗, IP-адрес или IndexedDB ↗. Мы собираем данные о производительности из браузерного API производительности API ↗. Эти данные о производительности временные и относятся только к текущей просматриваемой странице. Если пользователь обновляет страницу в браузере, все предыдущие данные о производительности исчезают, и начинают накапливаться новые. Эти данные нигде на устройстве не сохраняются и не считываются, они доступны только в памяти.

RUM без учета ЕЭЗ/ЕС

Клиенты могут включить RUM глобально либо ограничить его использование, исключив пользователей, подключающихся к дата-центрам Cloudflare в регионе ЕЭЗ/ЕС. При выборе второго варианта маяк RUM не обрабатывает данные о производительности для пользователей, подключающихся к дата-центру Cloudflare, расположенному в следующих странах (коды ISO): AT, BE, BG, HR, CY, CZ, DK, EE, FI, FR, DE, GR, HU, IS, IE, IT, LV, LI, LT, LU, MT, NL, NO, PL, PT, RO, SK, SI, ES, SE, CH, GB.

У клиентов на плане Free RUM включается автоматически, при этом трафик из ЕС исключается, а при желании эту функцию можно отключить. Клиенты на других планах могут включить RUM по мере необходимости.

Включите RUM в панели управления.

Сноски

  1. Модуль web-vitals разработан компанией Google и распространяется с открытым исходным кодом. Он не обращается ни к каким хранилищам данных в браузере. ↩ ↩2 ↩3 ↩4 ↩5 ↩6