کاهش زمان بارگذاری صفحه می تواند تجربه کاربری کلی سایت را بهبود بخشد. در این صفحه نحوه ارسال اطلاعات زمان بندی کاربر به Google Analytics توضیح داده شده است.
پیاده سازی
از دستور event
برای ارسال یک رویداد timing_complete
استفاده کنید:
gtag('event', 'timing_complete', {<timing_parameters>});
که در آن <timing_parameters> یک یا چند جفت پارامتر-مقدار است. هر جفت را با کاما از هم جدا کنید. برای مثال، این دستور یک رویداد زمانبندی کاربر را به Google Analytics ارسال میکند که نشان میدهد 3549 میلیثانیه طول کشیده تا صفحه وب فعلی تمام وابستگیهای جاوا اسکریپت خارجی را بارگیری کند.
gtag('event', 'timing_complete', {
'name' : 'load',
'value' : 3549,
'event_category' : 'JS Dependencies'
});
پارامترهای زمان بندی کاربر
این جدول پارامترهای زمان بندی کاربر را خلاصه می کند:
نام پارامتر | نوع داده | ضروری | شرح |
---|---|---|---|
name | string | آره | رشته ای برای شناسایی متغیر در حال ضبط (مثلا 'load' ). |
value | integer | آره | تعداد میلی ثانیه در زمان سپری شده برای گزارش به Google Analytics (مثلا 20 ). |
event_category | string | خیر | رشته ای برای دسته بندی همه متغیرهای زمان بندی کاربر به گروه های منطقی (به عنوان مثال 'JS Dependencies' ). |
event_label | string | خیر | رشتهای که میتواند برای افزودن انعطافپذیری در تجسم زمانبندی کاربر در گزارشها استفاده شود (مثلاً 'Google CDN' ). |
اندازه گیری زمان
رویداد timing_complete
به یک پارامتر value
نیاز دارد که زمان سپری شده را بر حسب میلی ثانیه مشخص می کند. باید کدی بنویسید که این مقدار را بگیرد.
ساده ترین راه برای انجام این کار این است که در ابتدای یک دوره زمانی یک مهر زمانی ایجاد کنید و در پایان دوره زمانی دیگر ایجاد کنید. سپس، زمان سپری شده بین مهرهای زمانی را محاسبه کنید.
بیشتر مرورگرهای مدرن از Navigation Timing API پشتیبانی میکنند که شامل روشهایی در شی window.performance برای اندازهگیری عملکرد صفحات وب از طریق دادههای زمانی با وضوح بالا است.
مثال زیر از متد performance.now()
استفاده میکند که مدت زمانی را که از بارگذاری صفحه برای اولین بار سپری شده است را برمیگرداند:
// Feature detects Navigation Timing API support.
if (window.performance) {
// Gets the number of milliseconds since page load
// (and rounds the result since the value must be an integer).
var timeSincePageLoad = Math.round(performance.now());
// Sends the timing event to Google Analytics.
gtag('event', 'timing_complete', {
'name': 'load',
'value': timeSincePageLoad,
'event_category': 'JS Dependencies'
});
}
ملاحظات نمونه گیری
Google Analytics از رویدادهای زمانبندی نمونهبرداری میکند تا از توزیع عادلانه منابع سیستم برای این ویژگی اطمینان حاصل کند.
نرخ نمونهبرداری از رویدادهای زمانبندی با تعداد کل بازدیدهای صفحه دریافتشده در روز قبل برای ملک تعیین میشود. جدول زیر نحوه تعیین نرخ نمونه برداری زمان بندی را نشان می دهد:
تعداد کل بازدید از صفحه (روز قبل) | حداکثر تعداد رویدادهای زمانی که پردازش خواهند شد |
---|---|
0 - 1000 | 100 |
1000 - 100000 | 10٪ از کل تعداد بازدید از صفحه |
100000 - 1000000 | 10000 |
1,000,000+ | 1٪ از کل تعداد بازدید از صفحه |