DokümantasyonGerçek kullanıcı izleme (RUM)

Dokümantasyon 18 / 19

Gerçek kullanıcı izleme (RUM)

Özellik sayfası: Sayfa hızı izleme Gerçek kullanıcı izleme (RUM)

Gerçek kullanıcı izleme (RUM), sitenizi ziyaret eden gerçek kullanıcıların tarayıcısında sayfa hızını ölçer: Google'ın Core Web Vitals metrikleri (LCP, INP, CLS), FCP, TTFB, gezinme zamanlaması ve JavaScript hataları. Sentetik kontrollerin (ajanın sitenizi belirli aralıklarla açması) aksine, gerçek cihazlar, gerçek bağlantılar ve gerçek sayfalar üzerinden ölçüm yapar.

Tasarım gereği kişisel veri toplanmaz: çerez, yerel depolama, kullanıcı kimliği veya parmak izi yoktur; IP adresi saklanmaz.

Ölçülen metrikler

Her sayfa görüntülemesi için tek bir ölçüm gönderilir (sayfa kapanırken veya sekme arka plana geçerken). Panoda her metriğin 75. yüzdelik (p75) değeri gösterilir: ziyaretlerin %75'i bu değerden daha iyidir. Google da Core Web Vitals değerlendirmesinde p75 kullanır.

Metrik Ne ölçer İyi Zayıf
LCP (Largest Contentful Paint) Sayfanın ana içeriğinin (en büyük görsel/metin bloğu) görünme süresi ≤ 2,5 sn > 4 sn
INP (Interaction to Next Paint) Tıklama, dokunma ve tuş vuruşlarından sonra sayfanın tepki süresi (sayfadaki en yavaş etkileşimlere yakın değer) ≤ 200 ms > 500 ms
CLS (Cumulative Layout Shift) Yüklenirken içeriğin beklenmedik kayması (birimsiz) ≤ 0,1 > 0,25
FCP (First Contentful Paint) İlk metin veya görselin görünmesi ≤ 1,8 sn > 3 sn
TTFB (Time to First Byte) Sunucunun ilk baytı gönderme süresi ≤ 0,8 sn > 1,8 sn

Ayrıca gezinme zamanlaması (DNS, bağlantı, TLS, sunucu yanıtı, DOMContentLoaded, load), cihaz sınıfı (görünüm genişliği 768 px'in altındaysa mobil, değilse masaüstü), bağlantı türü (tarayıcı destekliyorsa 4G/3G…) ve JS hataları (mesaj, dosya, satır — yığın izi yok) kaydedilir.

LCP, INP ve CLS'nin üçünün de p75 değeri “iyi” aralığındaysa sayfa Core Web Vitals'ı geçer.

Kurulum

  1. Panelde Gerçek kullanıcı (RUM) → Yeni RUM sitesi: site adını ve izinli kökenleri girin.
  2. Size verilen tek satırlık kodu sitenizin her sayfasında <head> bölümüne, mümkün olduğunca yukarıya ekleyin:
<script defer src="https://isletme.net.tr/rum/v1.js" integrity="sha384-…" crossorigin="anonymous" data-key="rk_…"></script>
  1. Siteyi bir tarayıcıda açıp başka bir sayfaya geçin. Ölçümler birkaç saniye içinde alınır, dakikalar içinde panoda özetlenir. Kurulum ve ayarlar sayfasında Son ölçüm zamanını ve “Son ölçümler” tablosunu görürsünüz.

Betik bağımlılıksızdır, sıkıştırılmış boyutu 3 KB'ın altındadır, sayfanızın yüklenmesini engellemez (defer) ve hiçbir çerez yazmaz. Sürümlüdür ve değişmez: v1.js dosyası hiçbir zaman değiştirilmez; bu yüzden integrity (SRI) özniteliği tarayıcının dosyayı doğrulamasını sağlar. Yeni sürümler farklı adla (v2.js) yayınlanır.

İçerik Güvenliği Politikası (CSP)

Sitenizde CSP varsa betiğin yüklenmesine ve ölçümün gönderilmesine izin verin:

Content-Security-Policy: script-src 'self' https://isletme.net.tr; connect-src 'self' https://isletme.net.tr

Betik eval, satır içi betik veya satır içi stil kullanmaz.

Seçenekler (script etiketi öznitelikleri)

Öznitelik Varsayılan Açıklama
data-key — Site anahtarı (zorunlu). Gizli değildir; koruma köken izin listesiyle sağlanır.
data-sample 100 Ölçülecek sayfa görüntüleme yüzdesi (1–100).
data-dnt açık data-dnt="0" ile Do Not Track / Global Privacy Control tercihi yok sayılır (önerilmez).
data-query — Sayfa yolunda korunacak sorgu anahtarları, virgülle (ör. kategori,sayfa).
data-errors açık data-errors="0" ile JS hataları toplanmaz.

Panelde ayarları değiştirdiğinizde gömme kodu buna göre güncellenir. Örnekleme oranını düşürürseniz eski kod da sunucuda ek örneklemeyle uyum sağlar; yükseltmek için yeni kodu sitenize eklemeniz gerekir.

İzinli kökenler

Ölçüm yalnızca sitenin izin listesindeki tam kökenlerden (https://www.ornek.com.tr gibi: şema + alan adı + gerekirse port) kabul edilir; tarayıcının gönderdiği Origin başlığı (yoksa Referer'ın kökeni) kontrol edilir. Joker kullanılamaz; www ve www'suz adres ayrı yazılır. İzin listesinde olmayan bir kökenden ölçüm reddedilirse ayarlar sayfasında uyarı görürsünüz ve tek tıkla listeye ekleyebilirsiniz.

Gizlilik ve KVKK

RUM özelliği kişisel veri işlememek üzere tasarlanmıştır:

  • Çerez, localStorage/sessionStorage, kullanıcı veya oturum kimliği yoktur; ziyaretçiler arasında ilişki kurulamaz ve parmak izi çıkarılmaz.
  • IP adresi saklanmaz. Kötüye kullanımı sınırlamak için yalnızca bellekte, anahtarlı kısa bir özet en fazla 70 saniye tutulur. Ülke bilgisi, sunucudaki çevrimdışı DB-IP Country Lite veritabanıyla hesaplanır; dış servise sorgu yapılmaz ve IP saklanmaz. IP Geolocation by DB-IP (CC BY 4.0).
  • Ziyaretçinin tarayıcısında Do Not Track veya Global Privacy Control açıksa ölçüm hiç gönderilmez (varsayılan).
  • Sayfa yolundan sorgu dizesi ve # parçası atılır (yalnızca izin verdiğiniz anahtarlar kalır); yoldaki e-posta adresleri, UUID'ler, uzun sayılar (telefon, T.C. kimlik, sipariş no) ve uzun belirteçler yer tutucuyla değiştirilir (:email, :uuid, :num, :token).
  • JS hata mesajlarındaki e-posta, uzun sayı, belirteç ve adres sorgu dizeleri maskelenir; yığın izi alınmaz.
  • Bot ve otomasyon trafiği (arama motorları, başsız tarayıcılar, hız ölçüm araçları) kaydedilmez.

Bu ölçümlerde veri sorumlusu siz (site sahibi), İşletme ise sizin adınıza ve talimatınızla işleyen veri işleyendir. Veriler yalnızca size hizmet sunmak için, Türkiye'deki sunucumuzda işlenir. Yine de ziyaretçilerinizi bilgilendirmeniz iyi bir uygulamadır; kendi gizlilik bildiriminize aşağıdaki paragrafı ekleyebilirsiniz:

Site performansı ölçümü. Sitemizin hızını ve hatalarını iyileştirmek için İşletme hizmetini kullanıyoruz. Sayfa açıldığında tarayıcınız sayfanın yüklenme ve tepki sürelerini (Core Web Vitals), cihaz türünü (mobil/masaüstü), bağlantı türünü, ziyaret edilen sayfanın yolunu (sorgu parametreleri olmadan) ve varsa JavaScript hata mesajlarını anonim olarak gönderir. Çerez veya benzeri bir tanımlayıcı kullanılmaz, IP adresiniz saklanmaz ve ziyaretleriniz birbirine bağlanamaz. Tarayıcınızda “İzlenmeme İsteği” (Do Not Track) veya Global Privacy Control açıksa ölçüm yapılmaz. Veriler hizmet sağlayıcımızın Türkiye'deki sunucularında, paketimize göre ham olarak en fazla 30 gün, özet olarak en fazla 1 yıl saklanır.

İngilizce sürüm:

Site performance measurement. To improve the speed and reliability of our site we use İşletme. When a page loads, your browser anonymously sends page load and responsiveness timings (Core Web Vitals), device class (mobile/desktop), connection type, the page path (without query parameters) and any JavaScript error messages. No cookies or similar identifiers are used, your IP address is not stored and visits cannot be linked together. If Do Not Track or Global Privacy Control is enabled in your browser, no measurement is sent. Data is processed on our provider's servers in Türkiye and kept for at most 30 days in raw form and up to 1 year as aggregates, depending on our plan.

Pano

Gerçek kullanıcı (RUM) → site sayfasında:

  • Core Web Vitals kartları: p75 değeri, derecelendirme ve iyi / geliştirilmeli / zayıf dağılımı (yüzdeler kesin sayılardır).
  • Eğilim: seçtiğiniz metriğin p75 değeri saat saat (24 saat ve 7 gün) veya gün gün (30 ve 90 gün); arka planda eşik bantları ve sayfa görüntüleme sütunları.
  • En çok görüntülenen sayfalar ve en yavaş sayfalar (LCP ve INP p75; en az 5 ölçümü olan sayfalar). Bir sayfaya tıklayınca pano o sayfaya süzülür.
  • Cihaz, bağlantı türü ve gezinme türü dağılımı.
  • JS hataları: mesaja göre gruplanır; sayı, ilk/son görülme ve en çok görüldüğü sayfalar.
  • Süzgeçler: aralık, cihaz, sayfa.

Özetler 5 dakikada bir (saatlik) ve 30 dakikada bir (günlük, organizasyonunuzun saat diliminde) güncellenir. Bir saat veya bir günün p75'i kesin değerdir; birden çok dönemi kapsayan aralıkların p75'i birleştirilmiş histogramdan hesaplanır (hata payı genellikle %2–3). Saat başına en çok görüntülenen 50 sayfa (günlük özette 200) ayrı tutulur; diğerleri “(diğer sayfalar)” satırında toplanır.

Eşik uyarıları

Kurulum ve ayarlar → Eşik uyarıları bölümünde kural ekleyin: metrik, eşik (ms; CLS için birimsiz), pencere (15 dk – 24 sa), cihaz ve en az ölçüm sayısı. Her 5 dakikada son pencerenin p75 değeri hesaplanır; eşik aşılırsa seçtiğiniz bildirim kanallarına (seçim yoksa organizasyonun varsayılan kanallarına) rum.threshold uyarısı gider. Aynı pencere diliminde (ör. 60 dakikalık kural için her saat dilimi) en fazla bir uyarı gönderilir; aşım sürerse sonraki pencerede tekrar bildirilir. Bu bilgilendirme uyarısı SMS, mobil bildirim ve sesli aramaya gönderilmez. Pencerede en az ölçüm sayısına ulaşılmazsa değerlendirme yapılmaz (düşük trafikte gürültüyü önler).

Kota ve saklama

  • Paketinize göre RUM sitesi sayısı ve aylık sayfa görüntüleme kotası vardır (Paketler sayfasında). Kota dolunca yeni ölçümler düşürülür ve sayılır; ek ücret veya fatura sürprizi yoktur. Panelde bu ayki kullanım ve düşürülen ölçümler (kota, bot, DNT/GPC, izinsiz köken, örnekleme, hız sınırı) görünür. Kotayı uzatmak için örnekleme oranını düşürebilirsiniz.
  • Ham ölçümler paketinize göre 7–30 gün, saatlik özetler 14 gün, günlük özetler ve hata grupları paketinizin özet saklama süresi kadar tutulur. Siteyi sildiğinizde özetler hemen, ham ölçümler en geç bir gün içinde silinir.

Sınırlamalar

  • Tek sayfalı uygulamalarda (SPA) sayfa yenilenmeden yapılan geçişler ayrı sayfa görüntülemesi sayılmaz; ölçüm tam sayfa yüklemesi başına yapılır.
  • LCP, INP ve CLS yalnızca bu metrikleri destekleyen tarayıcılarda ölçülür: Chromium tabanlı tarayıcılar (Chrome, Edge, Opera, Samsung Internet) üçünü de destekler; Safari ve Firefox'ta bazıları eksik olabilir. Desteklemeyen tarayıcılardan gelen ölçümlerde yalnızca desteklenen metrikler ve zamanlama bulunur; sayfa görüntüleme yine sayılır.
  • Başka alan adından yüklenen betiklerdeki hatalar tarayıcı tarafından “Script error.” olarak gizlenir; ayrıntı için o betikleri crossorigin ile yükleyin.
  • Betik defer ile yüklendiğinden, sayfa ayrıştırılmadan önce oluşan hatalar kaçabilir.
  • İleri/geri önbellekten (bfcache) dönüşler ayrı sayfa görüntülemesi olarak sayılır; bu ölçümlerde TTFB ve gezinme zamanlaması yoktur.

Sorun giderme

  • Hiç ölçüm gelmiyor: kodun sayfada olduğunu ve data-key değerinin panelle aynı olduğunu kontrol edin; kökeni izin listesine ekleyin; CSP'nin betiğe ve https://isletme.net.tr adresine izin verdiğini doğrulayın; tarayıcınızda Do Not Track / GPC açıksa ölçüm gönderilmez (test için başka tarayıcı kullanın). Ölçüm sayfadan ayrılırken gönderilir: başka bir sayfaya geçin veya sekmeyi kapatın.
  • Anahtar kötüye kullanılıyor: Ayarlar → Anahtarı yenile. Eski kod anında çalışmaz; yeni kodu sitenize ekleyin.
  • Tarayıcı konsolunda integrity hatası: kodu panelden olduğu gibi kopyalayın; integrity değeri betik sürümüyle eşleşmelidir.

Bu belge ürünün mevcut davranışını anlatır. Bir tutarsızlık görürseniz lütfen bize bildirin.