Налаштування Real User Monitoring (RUM)
Real User Monitoring фіксує продуктивність сторінок очима реальних користувачів—з їхніми конкретними пристроями, мережами та браузерами. Синтетичний моніторинг показує ідеальну картину; RUM показує реальність.
Що збирає RUM
Ключові Web Vitals: LCP (Largest Contentful Paint), FID/INP (First Input Delay / Interaction to Next Paint), CLS (Cumulative Layout Shift), TTFB (Time to First Byte), FCP.
Додатково—помилки JavaScript, мережеві запити, час завантаження ресурсів, навігація між сторінками в SPA, географічне розподіл затримок.
Інструменти
| Інструмент | Особливості | Найкраще для |
|---|---|---|
| Datadog RUM | Реплеї сесій, сигнали | Великі застосунки |
| New Relic Browser | Інтеграція з APM бекенду | Full-stack моніторинг |
| Sentry Performance | Трейси + помилки разом | Стартапи, SaaS |
| Grafana Faro | Open-source, self-hosted | Контроль даних |
| web-vitals (Google) | Легка бібліотека | Базовий збір |
Реалізація через web-vitals + власний Endpoint
Мініималістичний підхід без третіх сторін—бібліотека web-vitals відправляє метрики на ваш сервер:
import { onCLS, onFCP, onLCP, onTTFB, onINP } from 'web-vitals';
function sendToAnalytics({ name, value, id, rating }) {
navigator.sendBeacon('/api/rum', JSON.stringify({
metric: name, value: Math.round(value),
id, rating, url: location.href,
ua: navigator.userAgent, ts: Date.now()
}));
}
onCLS(sendToAnalytics);
onFCP(sendToAnalytics);
onLCP(sendToAnalytics);
onTTFB(sendToAnalytics);
onINP(sendToAnalytics);
Дані записуються в ClickHouse—він ефективно зберігає часові ряди та будує перцентильні звіти.
Сегментація даних
Сирі середні значення не мають значення. Сегментуйте за:
- Пристрій—мобільний/десктоп/планшет
- Країна/регіон—затримка CDN сильно різниться
- Тип з'єднання—4G, WiFi, 3G
- Версія браузера—особливо при підтримці legacy
-
Маршрут—
/checkoutповільніше за/catalog
Сигнали та пороги
Встановлюйте сигнали на p75 (75-й перцентиль), а не на середнє значення. Google оцінює LCP як "хороший" при p75 < 2.5 сек. Якщо p75 LCP на мобільних перевищує 4 сек—це прямий сигнал до оптимізації.
Часова шкала
Базова реалізація з відправкою метрик та дашбордом у Grafana—1–2 дні. Інтеграція з Datadog або New Relic з реплеями сесій та сигналами—3–5 днів.







