توقيتات المستخدم

يصف هذا الدليل كيفية قياس الفترات الزمنية باستخدام analytics.js.

نظرة عامة

أوضحت الدراسات أنّ تقليل وقت تحميل الصفحة يؤدي إلى تحسين تجربة المستخدم الإجمالية في الموقع الإلكتروني. تحتوي "إحصاءات Google" على عدد من التقارير الفعّالة التي تقيس تلقائيًا أوقات تحميل الصفحات وتسجّلها. ومع ذلك، يمكن أيضًا قياس معلومات التوقيت المخصّص لقياس الأداء الخاص بموقعك الإلكتروني.

تسمح توقيتات المستخدم للمطوّرين بقياس الفترات الزمنية باستخدام مكتبة analytics.js. وهذه الميزة مفيدة على وجه الخصوص للمطوّرين لقياس وقت الاستجابة أو الوقت المستغرَق في إجراء طلبات AJAX وتحميل موارد الويب.

التنفيذ

يمكن إرسال نتائج توقيتات المستخدم باستخدام الأمر send وتحديد hitType لـ timing. يتضمن الأمر send التوقيع التالي لنوع نتيجة timing:

ga('send', 'timing', [timingCategory], [timingVar], [timingValue], [timingLabel], [fieldsObject]);

حقول توقيتات المستخدم

يلخص الجدول التالي حقول توقيتات المستخدم:

اسم الحقل نوع القيمة مطلوبة الوصف
timingCategory text نعم سلسلة لتصنيف جميع متغيّرات توقيت المستخدم في مجموعات منطقية (مثل 'JS Dependencies').
timingVar text نعم سلسلة لتحديد المتغيّر الذي يتم تسجيله (مثل 'load').
timingValue عدد صحيح نعم عدد المللي ثانية في الوقت المنقضي لإرسال التقارير إلى "إحصاءات Google" (مثل 20).
timingLabel text لا سلسلة يمكن استخدامها لتوفير مرونة في عرض توقيتات المستخدِم في التقارير (مثل 'Google CDN').

أمثلة:

يرسل الأمر التالي نتيجة توقيت المستخدم إلى "إحصاءات Google" للإشارة إلى أن تحميل جميع تبعيات JavaScript الخارجية استغرقت في صفحة الويب الحالية 3549 مللي ثانية:

ga('send', 'timing', 'JS Dependencies', 'load', 3549);

يُرجى ملاحظة أنّه كما هو الحال مع جميع أوامر send، يمكن أيضًا تحديد الحقول التي تم تمريرها في المَعلمات الملائمة في fieldsObject. يمكن إعادة كتابة الأمر أعلاه على النحو التالي:

ga('send', {
  hitType: 'timing',
  timingCategory: 'JS Dependencies',
  timingVar: 'load',
  timingValue: 3549
});

قياس الوقت

عند إرسال بيانات توقيت المستخدم، عليك تحديد مقدار المللي ثانية التي تم قضاؤها في المَعلمة timingValue. الأمر متروك لك لكتابة التعليمات البرمجية لاستغلال هذه الفترة الزمنية.

تتمثل أسهل طريقة لإجراء ذلك في إنشاء طابع زمني في بداية الفترة الزمنية وإنشاء طابع زمني آخر في نهاية تلك الفترة. بعد ذلك، يمكنك استخدام الطابع الزمني لتحديد الوقت الذي قضيته.

تتوافق معظم المتصفحات الحديثة مع 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 hit to Google Analytics.
  ga('send', 'timing', 'JS Dependencies', 'load', timeSincePageLoad);
}

اعتبارات أخذ العينات

سيحصل Google Analytics على عينات من نتائج التوقيت أثناء المعالجة لضمان التوزيع العادل لموارد النظام لهذه الميزة.

يتم تحديد معدل أخذ عينات النتائج من خلال العدد الإجمالي لنتائج مشاهدة الصفحة على الويب التي تم الحصول عليها خلال اليوم السابق للموقع. يوضِّح الجدول التالي كيفية تحديد معدّل أخذ عينات التوقيت:

إجمالي عدد نتائج مشاهدة الصفحة (اليوم السابق) الحد الأقصى لعدد نتائج التوقيت التي ستتم معالجتها
0 - 1000 100
من 1,000 إلى 100,000 10% من إجمالي عدد نتائج مشاهدة الصفحة على الويب
من 100,000 إلى 1,000,000 10,000
أكثر من 1,000,000 مستخدم 1% من إجمالي عدد نتائج مشاهدة الصفحة على الويب

الحد من عدد النتائج المرسلة

لتجنب إرسال نتائج في "إحصاءات Google" لن تتم معالجتها، تتيح لك مقتطف analytics.js التحكّم في النسبة المئوية للنتائج المُرسَلة من خلال خيارَي الضبط sampleRate وsiteSpeedSampleRate. ويتم ضبط هذين الحقلَين تلقائيًا على% 100 و%1 على التوالي. يمكنك تعديل هذه القيم لتقريب عدد النتائج التي سيعالجها Google Analytics بشكل تقريبي استنادًا إلى متوسط عدد مرات مشاهدة الصفحة اليومية.