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


يجمع Performance Monitoring عمليات التتبُّع لمساعدتك في تتبُّع أداء تطبيقك. ويُعدّ التتبُّع تقريرًا لبيانات الأداء التي تم تسجيلها بين نقطتَين زمنيتَين في تطبيقك.

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

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

في الرمز البرمجي، يمكنك تحديد بداية تتبع الرمز البرمجي المخصّص ونهايته باستخدام واجهات برمجة التطبيقات التي تقدّمها حزمة SDK في Performance Monitoring. بالنسبة إلى تطبيقات Android، يمكنك أيضًا تتبُّع طُرق معيّنة باستخدام التعليق التوضيحي @AddTrace. يمكن بدء عمليات تتبُّع الرموز المخصّصة في أي وقت بعد إنشائها، تكون سلاسل المحادثات آمنة.

بما أن المقياس التلقائي الذي يتم جمعه لعمليات التتبّع هذه هو "المدة"، تكون تسمى أحيانًا "عمليات تتبع المدة".

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

السمات التلقائية والسمات المخصّصة والمقاييس المخصّصة

لتتبُّع الرمز المخصّص، يسجّل Performance Monitoring تلقائيًا. السمات التلقائية (البيانات الوصفية الشائعة، مثل إصدار التطبيق والبلد والجهاز وغير ذلك) لكي تتمكّن من فلترة البيانات بحثًا عن عملية التتبُّع في وحدة تحكُّم Firebase. إِنْتَ إضافة السمات المخصّصة ومراقبتها أيضًا (مثل مستوى اللعبة أو خصائص المستخدمين).

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

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

إضافة عمليات تتبُّع رموز مخصّصة

استخدِم Performance Monitoring Trace API لإضافة عمليات تتبُّع رموز مخصّصة من أجل مراقبة رمز تطبيق معيّن.

لاحظ ما يلي:

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

لبدء عملية تتبُّع رموز مخصّصة وإيقافها، عليك إرفاق الرمز الذي تريد تتبُّعه. سطورًا من التعليمات البرمجية تشبه ما يلي (يستخدم هذا المثال اسم تعقب مخصصًا test_trace):

Kotlin+KTX

// Import these Performance Monitoring classes at the top of your `.kt` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.Trace;

val myTrace = Firebase.performance.newTrace("test_trace")
myTrace.start()

// code that you want to trace

myTrace.stop()

Java

// Import these Performance Monitoring classes at the top of your `.java` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.Trace;

Trace myTrace = FirebasePerformance.getInstance().newTrace("test_trace");
myTrace.start();

// code that you want to trace

myTrace.stop();

(اختياري) مراقبة طُرق معيّنة باستخدام @AddTrace

تتوافق تطبيقات Android أيضًا مع @AddTrace التعليق التوضيحي لقياس عمليات تتبُّع الرموز المخصّصة. باستخدام هذه الميزة، يبدأ التتبُّع عند بداية الطريقة المحدّدة ويتوقف عند اكتمال الطريقة، بما في ذلك أيّ شيء تستدعيه الطريقة.

على سبيل المثال، يمكنك إنشاء عملية تتبُّع رموز مخصّصة تُسمّى onCreateTrace، ويتم تشغيلها. عند استدعاء طريقة onCreate().

Kotlin+KTX

// Import these Performance Monitoring classes at the top of your `.kt` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.AddTrace;

// Add the `@AddTrace` annotation above the method you want to trace
// the `enabled` argument is optional and defaults to true
@AddTrace(name = "onCreateTrace", enabled = true)
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
}

Java

// Import these Performance Monitoring classes at the top of your `.java` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.AddTrace;

// Add the `@AddTrace` annotation above the method you want to trace
@Override
@AddTrace(name = "onCreateTrace", enabled = true /* optional */)
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
}

إضافة مقاييس مخصّصة إلى عمليات تتبُّع الرموز البرمجية المخصّصة

استخدِم Performance Monitoring Trace API لإضافة مقاييس مخصّصة إلى عمليات تتبُّع الرموز المخصّصة.

لاحظ ما يلي:

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

لإضافة مقياس مخصّص، أضِف سطرًا من الرمز مشابهًا لما يلي في كل مرة وقوع الحدث. على سبيل المثال، يحصِّل هذا المقياس المخصّص الأحداث ذات الصلة بالأداء التي تحدث في تطبيقك، مثل عمليات الوصول إلى ذاكرة التخزين المؤقت وعدم الوصول إليها (باستخدام مثالَي أسماء الأحداث item_cache_hit وitem_cache_miss ومقدار الزيادة 1).

Kotlin+KTX

val myTrace = Firebase.performance.newTrace("test_trace")
myTrace.start()

// code that you want to trace (and log custom metrics)
val item = cache.fetch("item")
if (item != null) {
    myTrace.incrementMetric("item_cache_hit", 1)
} else {
    myTrace.incrementMetric("item_cache_miss", 1)
}

myTrace.stop()

Java

Trace myTrace = FirebasePerformance.getInstance().newTrace("test_trace");
myTrace.start();

// code that you want to trace (and log custom metrics)
Item item = cache.fetch("item");
if (item != null) {
    myTrace.incrementMetric("item_cache_hit", 1);
} else {
    myTrace.incrementMetric("item_cache_miss", 1);
}

myTrace.stop();

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

استخدِم Performance Monitoring Trace API لإضافة سمات مخصّصة إلى عمليات تتبُّع الرموز البرمجية المخصّصة.

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

لاحظ ما يلي:

  • يجب أن تستوفي أسماء السمات المخصّصة المتطلبات التالية:

    • لا تحتوي على مسافة بيضاء بادئة أو لاحقة، ولا تحتوي على شرطة سفلية بادئة (_)
    • ما مِن مسافات
    • الحد الأقصى للطول هو 32 حرفًا.
    • إنّ الأحرف المسموح بها للاسم هي A-Z وa-z و_.
  • يمكن لكل عملية تتبُّع رموز مخصّصة تسجيل ما يصل إلى 5 سمات مخصّصة.

  • يُرجى التأكّد من أنّ السمات المخصّصة لا تحتوي على أي معلومات تحدد هوية أي شخص في Google.

    مزيد من المعلومات حول هذه الإرشادات

Kotlin+KTX

Firebase.performance.newTrace("test_trace").trace {
    // Update scenario.
    putAttribute("experiment", "A")

    // Reading scenario.
    val experimentValue = getAttribute("experiment")

    // Delete scenario.
    removeAttribute("experiment")

    // Read attributes.
    val traceAttributes = this.attributes
}

Java

Trace trace = FirebasePerformance.getInstance().newTrace("test_trace");

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

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

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

// Read attributes.
Map<String, String> traceAttributes = trace.getAttributes();

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

تتبُّع مقاييس محدّدة في لوحة البيانات

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

صورة للوحة المقاييس في <span class=لوحة بيانات مراقبة أداء Firebase" />

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

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

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

اطّلِع على مزيد من المعلومات حول استخدام لوحة البيانات.

عرض عمليات التتبُّع وبياناتها

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

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

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

يمكنك الوصول إلى صفحة تحديد المشاكل وحلّها بالطرق التالية:

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

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

صورة <span class=تصفية بيانات "مراقبة أداء Firebase" حسب السمة" />
  • الفلترة حسب إصدار التطبيق للاطّلاع على بيانات عن إصدار سابق أو أحدث إصدار
  • الفلترة حسب الجهاز لمعرفة كيفية تعامل الأجهزة القديمة مع تطبيقك
  • الفلترة حسب البلد للتأكد من أنّ الموقع الجغرافي لقاعدة البيانات لا يؤثّر في موقع جغرافي معيّن منطقة

مزيد من المعلومات حول عرض البيانات الخاصة .

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

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

  • اطّلِع على مزيد من المعلومات حول كيفية تتبُّع مشاكل الأداء في وحدة تحكّم Firebase.

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

  • عرض تقارير تفصيلية عن جلسات المستخدِمين التي يمكنك فيها الاطّلاع على تتبُّع محدّد في سياق مخطط زمني للتتبُّعات الأخرى التي تم جمعها أثناء الجلسة نفسها