إضافة مراقبة مخصصة لرمز تطبيق معين

تجمع مراقبة الأداء آثارًا لمساعدتك في مراقبة أداء تطبيقك. التتبع هو تقرير عن بيانات الأداء التي تم التقاطها بين نقطتين زمنيتين في تطبيقك.

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

المقياس الافتراضي لتتبع رمز مخصص هو "مدته" (الوقت بين نقطتي البداية والتوقف في التتبع) ، ولكن يمكنك إضافة مقاييس مخصصة أيضًا.

في التعليمات البرمجية الخاصة بك ، تقوم بتعريف بداية ونهاية تتبع التعليمات البرمجية المخصص باستخدام واجهات برمجة التطبيقات التي توفرها SDK لمراقبة الأداء.يمكن بدء تتبعات التعليمات البرمجية المخصصة في أي وقت بعد إنشائها ، وهي آمنة لمؤشر الترابط.

نظرًا لأن المقياس الافتراضي الذي تم جمعه لهذه الآثار هو "المدة" ، يُطلق عليها أحيانًا اسم "تتبعات المدة".

يمكنك عرض البيانات من هذه التتبع في علامة التبويب الفرعية عمليات التتبع المخصصة لجدول التتبع ، الموجود في أسفل لوحة معلومات الأداء (تعرف على المزيد حول استخدام وحدة التحكم لاحقًا في هذه الصفحة).

السمات الافتراضية والسمات المخصصة والمقاييس المخصصة

التعليمات البرمجية المخصصة ، تقوم "مراقبة الأداء" تلقائيًا بتسجيل السمات الافتراضية (البيانات الوصفية الشائعة مثل الدولة والمستعرض وعنوان URL للصفحة وما إلى ذلك) بحيث يمكنك تصفية البيانات للتتبع في وحدة تحكم Firebase. يمكنك أيضًا إضافة السمات المخصصة ومراقبتها (مثل ، مستوى اللعبة أو خصائص المستخدم).

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

يتم عرض السمات المخصصة والمقاييس المخصصة في وحدة تحكم Firebase جنبًا إلى جنب مع السمات الافتراضية والمقياس الافتراضي للتتبع.

إضافة آثار التعليمات البرمجية المخصصة

استخدم واجهة برمجة تطبيقات تتبع مراقبة الأداء لإضافة تتبعات تعليمات برمجية مخصصة لمراقبة كود تطبيق معين.

لاحظ ما يلي:

  • يمكن أن يحتوي التطبيق على العديد من آثار التعليمات البرمجية المخصصة.
  • يمكن تشغيل أكثر من تتبع رمز مخصص في نفس الوقت.
  • يجب أن تفي الأسماء الخاصة بتتبعات التعليمات البرمجية المخصصة بالمتطلبات التالية: عدم وجود مسافة بيضاء سابقة أو لاحقة ، وعدم وجود حرف شرطة سفلية بادئة ( _ ) ، والحد الأقصى للطول هو 100 حرف.
  • تدعم تتبعات التعليمات البرمجية المخصصة إضافة مقاييس مخصصة وسمات مخصصة .

لبدء تتبع رمز مخصص وإيقافه ، قم بلف التعليمات البرمجية التي تريد تتبعها بأسطر التعليمات البرمجية المشابهة لما يلي:

Web version 9

import { trace } from "firebase/performance";

const t = trace(perf, "CUSTOM_TRACE_NAME");
t.start();

// Code that you want to trace 
// ...

t.stop();

Web version 8

const trace = perf.trace("CUSTOM_TRACE_NAME");
trace.start();

// Code that you want to trace 
// ...

trace.stop();

أضف تتبعات التعليمات البرمجية المخصصة باستخدام User Timing API

بالإضافة إلى واجهة برمجة تطبيقات تتبع مراقبة الأداء ، يمكنك إضافة تتبعات تعليمات برمجية مخصصة باستخدام واجهة برمجة تطبيقات توقيت المستخدم الأصلية للمتصفح. يتم التقاط مدة التتبع التي يتم قياسها باستخدام واجهة برمجة التطبيقات هذه تلقائيًا بواسطة SDK لمراقبة الأداء. يعد استخدام User Timing API مفيدًا بشكل خاص إذا كنت تفضل تحميل SDK لمراقبة الأداء بشكل غير متزامن. بمجرد تهيئة SDK ، ستسجل SDK القياسات التي حدثت قبل تحميلها.

لاستخدام هذه الميزة ، قم بلف الرمز الذي تريد تتبعه بعلامات توقيت المستخدم:

Web version 9

const performance = window.performance;

performance.mark("measurementStart");

// Code that you want to trace 
// ...

performance.mark("measurementStop");
performance.measure("customTraceName", "measurementStart", "measurementStop");

Web version 8

const performance = window.performance;

performance.mark("measurementStart");

// Code that you want to trace 
// ...

performance.mark("measurementStop");
performance.measure("customTraceName", "measurementStart", "measurementStop");

لاحظ أن performance في المثال أعلاه يشير إلى كائن window.performance بالمتصفح.

عند استخدام User Timing API ، لا يمكن إضافة السمات والمقاييس المخصصة إلى تتبعات الشفرة المخصصة. استخدم واجهة برمجة تطبيقات تتبع مراقبة الأداء إذا كنت تريد إضافة هذه العناصر المخصصة إلى تتبع رمز مخصص.

إضافة مقاييس مخصصة لتتبع التعليمات البرمجية المخصصة

استخدم واجهة برمجة تطبيقات تتبع مراقبة الأداء لإضافة مقاييس مخصصة لتتبع التعليمات البرمجية المخصصة.

لاحظ ما يلي:

  • يجب أن تفي أسماء المقاييس المخصصة بالمتطلبات التالية: عدم وجود مسافة بيضاء سابقة أو لاحقة ، وعدم وجود حرف شرطة سفلية بادئة ( _ ) ، والحد الأقصى للطول هو 100 حرف.
  • يمكن لكل تتبع رمز مخصص تسجيل ما يصل إلى 32 مقياسًا (بما في ذلك مقياس المدة الافتراضي).

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

Web version 9

import { trace } from "firebase/performance";

async function getInventory(inventoryIds) {
  const t = trace(perf, "inventoryRetrieval");

  // Tracks the number of IDs fetched (the metric could help you to optimize in the future)
  t.incrementMetric("numberOfIds", inventoryIds.length);

  // Measures the time it takes to request inventory based on the amount of inventory
  t.start();
  const inventoryData = await retrieveInventory(inventoryIds);
  t.stop();

  return inventoryData;
}

Web version 8

async function getInventory(inventoryIds) {
  const trace = perf.trace("inventoryRetrieval");

  // Tracks the number of IDs fetched (the metric could help you to optimize in the future)
  trace.incrementMetric("numberOfIds", inventoryIds.length);

  // Measures the time it takes to request inventory based on the amount of inventory
  trace.start();
  const inventoryData = await retrieveInventory(inventoryIds);
  trace.stop();

  return inventoryData;
}

إنشاء سمات مخصصة لتتبع التعليمات البرمجية المخصصة

استخدم واجهة برمجة تطبيقات تتبع مراقبة الأداء لإضافة سمات مخصصة لتتبع التعليمات البرمجية المخصصة.

لاستخدام السمات المخصصة ، أضف رمزًا إلى تطبيقك يحدد السمة ويربطها بتتبع رمز مخصص محدد. يمكنك تعيين الخاصية المميزة المخصصة في أي وقت بين وقت بدء التتبع ووقت توقف التتبع.

لاحظ ما يلي:

  • يجب أن تفي أسماء السمات المخصصة بالمتطلبات التالية: عدم وجود مسافة بيضاء سابقة أو لاحقة ، وعدم وجود حرف شرطة سفلية ( _ ) ، والحد الأقصى للطول 32 حرفًا.

  • يمكن لكل تتبع رمز مخصص تسجيل ما يصل إلى 5 سمات مخصصة.

  • يجب ألا تستخدم السمات المخصصة التي تحتوي على معلومات تعرّف Google شخصيًا بفرد.

    تعرف على المزيد حول هذا الدليل

Web version 9

import { trace } from "firebase/performance";

const t = trace(perf, "test_trace");
t.putAttribute("experiment", "A");

// Update scenario
t.putAttribute("experiment", "B");

// Reading scenario
const experimentValue = t.getAttribute("experiment");

// Delete scenario
t.removeAttribute("experiment");

// Read attributes
const traceAttributes = t.getAttributes();

Web version 8

const trace = perf.trace("test_trace");
trace.putAttribute("experiment", "A");

// Update scenario
trace.putAttribute("experiment", "B");

// Reading scenario
const experimentValue = trace.getAttribute("experiment");

// Delete scenario
trace.removeAttribute("experiment");

// Read attributes
const traceAttributes = trace.getAttributes();

تتبع بيانات الأداء وعرضها وتصفيتها

لعرض بيانات الأداء في الوقت الفعلي ، تأكد من أن تطبيقك يستخدم إصدار SDK لمراقبة الأداء المتوافق مع معالجة البيانات في الوقت الفعلي. تعرف على المزيد حول بيانات الأداء في الوقت الفعلي .

تتبع مقاييس محددة في لوحة القيادة الخاصة بك

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

صورة من لوحة المقاييس في لوحة معلومات مراقبة أداء Firebase

لإضافة مقياس إلى لوحة المقاييس ، اتبع الخطوات التالية:

  1. انتقل إلى لوحة معلومات الأداء في وحدة تحكم Firebase.
  2. انقر فوق بطاقة قياس فارغة ، ثم حدد مقياسًا موجودًا لإضافته إلى لوحتك.
  3. انقر فوق على بطاقة مقياس مملوءة لمزيد من الخيارات ، على سبيل المثال لاستبدال مقياس أو إزالته.

تعرض لوحة المقاييس البيانات المترية التي تم جمعها بمرور الوقت ، سواء في شكل رسومي أو كنسبة مئوية من التغيير الرقمي.

تعرف على المزيد حول استخدام لوحة القيادة .

عرض الآثار وبياناتها

لعرض آثارك ، انتقل إلى لوحة معلومات الأداء في وحدة تحكم Firebase ، وقم بالتمرير لأسفل إلى جدول التتبع ، ثم انقر فوق علامة التبويب الفرعية المناسبة. يعرض الجدول بعض أهم المقاييس لكل أثر ، ويمكنك حتى فرز القائمة حسب النسبة المئوية للتغيير لمقياس معين.

توفر مراقبة الأداء صفحة استكشاف الأخطاء وإصلاحها في وحدة تحكم Firebase التي تسلط الضوء على تغييرات المقاييس ، مما يجعل من السهل معالجة وتقليل تأثير مشكلات الأداء على تطبيقاتك والمستخدمين. يمكنك استخدام صفحة استكشاف الأخطاء وإصلاحها عندما تتعرف على مشكلات الأداء المحتملة ، على سبيل المثال ، في السيناريوهات التالية:

  • حددت المقاييس ذات الصلة على لوحة القيادة ولاحظت دلتا كبيرة.
  • في جدول التتبع ، تقوم بالفرز لعرض أكبر دلتا في الأعلى ، وسترى تغيرًا ملحوظًا في النسبة المئوية.
  • تتلقى تنبيهًا عبر البريد الإلكتروني لإعلامك بمشكلة في الأداء.

يمكنك الوصول إلى صفحة استكشاف الأخطاء وإصلاحها بالطرق التالية:

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

عند النقر فوق اسم التتبع في جدول التتبع ، يمكنك بعد ذلك التعمق في المقاييس المهمة. انقر فوق الزر تصفية لتصفية البيانات حسب السمة ، على سبيل المثال:

صورة لبيانات مراقبة أداء Firebase التي تتم تصفيتها حسب السمة
  • قم بالتصفية حسب عنوان URL للصفحة لعرض البيانات الخاصة بصفحة معينة من موقعك
  • قم بالتصفية حسب نوع الاتصال الفعال لمعرفة كيفية تأثير اتصال الجيل الثالث على تطبيقك
  • قم بالتصفية حسب البلد للتأكد من أن موقع قاعدة البيانات الخاصة بك لا يؤثر على منطقة معينة

تعرف على المزيد حول عرض البيانات لتتبعك .

الخطوات التالية

  • تعرف على المزيد حول استخدام السمات لفحص بيانات الأداء.

  • تعرف على المزيد حول كيفية تتبع مشكلات الأداء في وحدة تحكم Firebase.

  • قم بإعداد تنبيهات لتغييرات التعليمات البرمجية التي تؤدي إلى تدهور أداء تطبيقك. على سبيل المثال ، يمكنك تكوين تنبيه عبر البريد الإلكتروني لفريقك إذا تجاوزت مدة تتبع التعليمات البرمجية المخصصة حدًا قمت بتعيينه.