Performance Monitoring تستخدِم التتبُّعات لجمع بيانات عن العمليات التي تتم مراقبتها في تطبيقك. والتتبُّع هو تقرير يحتوي على بيانات تم جمعها بين نقطتَين زمنيتَين في تطبيقك.
بالنسبة إلى جميع أنواع التطبيقات، Performance Monitoring تجمع ميزة "مراقبة الأداء" تلقائيًا تتبُّعًا لكل طلب شبكة يرسله تطبيقك، ويُعرف باسم تتبُّع طلب شبكة HTTP/S. تجمع هذه التتبُّعات مقاييس للوقت بين إرسال تطبيقك طلبًا إلى نقطة نهاية خدمة واكتمال الردّ من نقطة النهاية هذه. بالنسبة إلى أي نقطة نهاية يرسل إليها تطبيقك طلبًا، تجمع ميزة "مراقبة الأداء" عدة مقاييس:Performance Monitoring
وقت الردّ: الوقت بين إرسال الطلب وتلقّي الردّ بالكامل
حجم حمولة الردّ: حجم حمولة الشبكة التي نزّلها التطبيق بالبايت
حجم حمولة الطلب: حجم حمولة الشبكة التي حمّلها التطبيق بالبايت
نسبة النجاح: النسبة المئوية للردود الناجحة (رموز الردّ في النطاق 100 - 399) مقارنةً بإجمالي الردود
يمكنك الاطّلاع على البيانات من هذه التتبُّعات في علامة التبويب الفرعية طلبات الشبكة في جدول التتبُّعات، والذي يظهر في أسفل لوحة بيانات الأداء (مزيد من المعلومات عن استخدام وحدة التحكّم لاحقًا في هذه الصفحة).
Performance Monitoring تجمع ميزة "مراقبة الأداء" مقاييس لطلبات الشبكة التي تستخدِم مكتبات الشبكات التالية:
Swift
- URLSession
- URLConnection
Objective-C
- NSURLSession
- NSURLConnection
تخصيص تجميع بيانات طلبات الشبكة
بالإضافة إلى الأدوات الجاهزة وتجميع البيانات لطلبات الشبكة ، يتيح Performance Monitoring أيضًا الخيارات التالية:
- تتبُّع طلبات الشبكة يدويًا: تتضمّن المراقبة الجاهزة معظم طلبات الشبكة لتطبيقك. ومع ذلك، قد لا يتم الإبلاغ عن بعض الطلبات أو قد تستخدِم مكتبة مختلفة لإرسال طلبات الشبكة. في هذه الحالات، يمكنك استخدام Performance Monitoring API لتتبُّع طلبات الشبكة المخصّصة يدويًا.
- تجميع البيانات ضمن أنماط عناوين URL المخصّصة: إذا كانت هناك عناوين URL معيّنة لا تجمعها Firebase من خلال مطابقة أنماط عناوين URL التلقائية المستندة إليها، يمكنك إنشاء أنماط عناوين URL مخصّصة لمراقبة مجموعة معيّنة من عناوين URL بمرور الوقت.
- تخصيص طريقة احتساب نسبة النجاح: في بعض الأحيان، يكون رمز الخطأ متوقّعًا لنقاط نهاية معيّنة في واجهة برمجة التطبيقات أو يتم التعامل معه في تطبيقك. في هذه الحالات، يمكنك ضبط طريقة احتساب نسبة النجاح ومراقبة نسبة نجاح طلبات الشبكة في تطبيقك بدقة أكبر.
تجميع البيانات ضمن أنماط عناوين URL
Firebase Performance Monitoring تجمع تلقائيًا بيانات لطلبات الشبكة المشابهة لمساعدتك في فهم المؤشرات في أداء طلبات الشبكة.
بالنسبة إلى كل طلب، تتحقّق Firebase مما إذا كان عنوان URL لطلب الشبكة يطابق نمط عنوان URL. إذا كان عنوان URL للطلب يطابق نمط عنوان URL، تجمع Firebase تلقائيًا بيانات الطلب ضمن نمط عنوان URL. تعرض Firebase أنماط عناوين URL والبيانات المجمّعة الخاصة بها في علامة التبويب الشبكة في لوحة بيانات الأداء في Firebase console.
ما هو نمط عنوان URL؟
يحتوي نمط عنوان URL على نطاق بالإضافة إلى نمط يمكن أن يطابق مسار عنوان URL، مثلاً: example.com/*/animals/**.
يمكن أن تحتوي أنماط عناوين URL على أجزاء المسار التالية:
- نص عادي: يطابق سلسلة نصية مطابقة تمامًا
*: يطابق أي سلسلة في جزء مسار واحد**: يطابق لاحقة مسار عشوائية
يمكن أن تكون أنماط عناوين URL أحد الخيارَين التاليَين:
- الأنماط المستندة إلى Firebase: تُعرف باسم أنماط عناوين URL التلقائية الأنماط
- الأنماط التي يحدّدها المستخدِم: تُعرف باسم أنماط عناوين URL المخصّصة
على سبيل المثال، يمكن أن يطابق أي من طلبات عناوين URL التالية نمط عنوان URL example.com/*/animals/**.
example.com/singapore/animalsexample.com/australia/animals/spidersexample.com/australia/animals/marsupials/koala.png
يمكن أن يحتوي النطاق لنمط عنوان URL أيضًا على * كجزء أول،
مثلاً: *.example.com/*/fruits/**.
تربط Firebase كل طلب بنمط عنوان URL واحد فقط. إذا كنت قد ضبطت أي أنماط عناوين URL مخصّصة، تحاول Firebase مطابقة عناوين URL للطلبات مع هذه الأنماط أولاً. إذا لم تعثر Firebase على نمط عنوان URL مخصّص ، فإنّها تطابق عنوان URL للطلب مع نمط عنوان URL التلقائي الأكثر تمثيلاً. مزيد من المعلومات عن أنماط عناوين URL التلقائية والمخصّصة في الأقسام التالية
أنماط عناوين URL التلقائية
بدون أي إعداد من جانبك، Performance Monitoring تحاول عرض أحدث سلوك استخدام لتطبيقك من خلال مطابقة طلبات تطبيقك مع أنماط عناوين URL التلقائية.
كيف تعمل ميزة مطابقة أنماط عناوين URL التلقائية؟
تطابق Firebase كل طلب مع نمط عنوان URL التلقائي الأكثر تمثيلاً الذي استندت إليه من الطلبات التي أرسلها تطبيقك. ومع ذلك، تجدر الإشارة إلى أنّ Firebase تحاول مطابقة عناوين URL للطلبات مع أي أنماط عناوين URL مخصّصة تم ضبطها أولاً.
في ما يلي مثال أساسي على كيفية محاولة Firebase مطابقة الطلبات مع نمط عنوان URL التلقائي الأكثر تمثيلاً لتطبيقك.
يرسل تطبيقك العديد من الطلبات إلى عناوين URL مثل:
example.com/germany/animals/bearsexample.com/germany/animals/birdsexample.com/germany/cars
تحدّد Firebase أنّ
example.com/germany/**هو نمط طلب شائع لتطبيقك وتضيفه كنمط عنوان URL تلقائي في مشروعك.بالنسبة إلى أي طلبات جديدة مطابِقة لنمط عنوان URL هذا، تجمع Firebase بيانات الطلبات ضمن نمط عنوان URL التلقائي
example.com/germany/**.بعد أسبوع واحد، تكون معظم طلبات تطبيقك إلى
example.com/germany/animals/bearsوexample.com/germany/animals/birds. لذلك، تستند Firebase إلى نمط عنوان URL أكثر تمثيلاً هوexample.com/germany/animals/**.بالنسبة إلى أي طلبات جديدة مطابِقة لنمط عنوان URL الجديد هذا، تجمع Firebase بيانات الطلبات فقط ضمن نمط عنوان URL الجديد. تواصل Firebase تجميع بيانات الطلبات إلى
example.com/germany/carsضمنexample.com/germany/**.ومع ذلك، خلال الأسابيع القليلة التالية، تنخفض طلبات تطبيقك إلى
example.com/germany/animals/bearsوexample.com/germany/animals/birdsبشكل كبير. تحدّد Firebase أنّexample.com/germany/animals/**لا يمثّل أحدث سلوك استخدام لتطبيقك، لذا تبدأ Firebase في مطابقة هذَين الطلبَين مرة أخرى معexample.com/germany/**.لا تجمع Firebase أي بيانات طلب إضافية ضمن
example.com/germany/animals/**لأنّه لم يعُد نمط عنوان URL التلقائي الأكثر تمثيلاً.
بما أنّ ميزة مطابقة أنماط عناوين URL التلقائية ديناميكية، يُرجى العِلم بما يلي:
لا تتأثر المطابقات والبيانات المجمّعة من الطلبات السابقة بأنماط عناوين URL الجديدة. لا تعيد Firebase تجميع بيانات الطلبات بأثر رجعي.
تتأثر الطلبات المستقبلية فقط بأنماط عناوين URL الجديدة. تربط Firebase كل طلب جديد بنمط عنوان URL التلقائي الأكثر تمثيلاً. ومع ذلك، تجدر الإشارة إلى أنّ Firebase تحاول مطابقة عناوين URL للطلبات مع أي أنماط عناوين URL مخصّصة تم ضبطها أولاً.
عرض أنماط عناوين URL التلقائية وبياناتها
تعرض Firebase جميع أنماط عناوين URL والبيانات المجمّعة الخاصة بها في علامة التبويب الفرعية طلبات الشبكة في جدول التتبُّعات، والذي يظهر في أسفل لوحة بيانات الأداء في Firebase console.
قد تظهر لك أنماط عناوين URL تحمل التصنيف غير مصنّف. هذه هي أنماط عناوين URL التلقائية "العريضة" التي يمكن أن تجمع Firebase ضمنها بيانات للطلبات التي لا تتطابق مع أي نمط عنوان URL أكثر تحديدًا.
عند انتهاء فترة التخزين للبيانات المجمّعة ضمن نمط عنوان URL، تحذف Firebase هذه البيانات من نمط عنوان URL. إذا انتهت صلاحية جميع البيانات المجمّعة ضمن نمط عنوان URL تلقائي ، تحذف Firebase نمط عنوان URL هذا من Firebase console.
أنماط عناوين URL المخصّصة
يمكنك إنشاء أنماط عناوين URL مخصّصة لمراقبة أنماط عناوين URL معيّنة لا تجمعها Firebase من خلال مطابقة أنماط عناوين URL التلقائية المستندة إليها. على سبيل المثال، يمكنك استخدام نمط عنوان URL مخصّص لتحديد وحلّ مشكلة في عنوان URL معيّن أو لمراقبة مجموعة معيّنة من عناوين URL بمرور الوقت.
انتقِل إلى مقالة إنشاء أنماط عناوين URL مخصّصة لمزيد من المعلومات.
تتبُّع بيانات الأداء وعرضها وفلترتها
للاطّلاع على بيانات الأداء في الوقت الفعلي، تأكَّد من أنّ تطبيقك يستخدِم إصدارًا من حزمة Performance Monitoring SDK متوافقًا مع معالجة البيانات في الوقت الفعلي. مزيد من المعلومات عن بيانات الأداء في الوقت الفعلي.
تتبُّع مقاييس معيّنة في لوحة البيانات
للتعرّف على مؤشرات مقاييسك الرئيسية، أضِفها إلى لوحة المقاييس في أعلى لوحة بيانات الأداء. يمكنك تحديد حالات الانحدار بسرعة من خلال الاطّلاع على التغييرات من أسبوع إلى آخر أو التأكّد من أنّ التغييرات الأخيرة في الرمز البرمجي تحسّن الأداء.
لوحة بيانات "مراقبة الأداء في Firebase"" />
لإضافة مقياس إلى لوحة المقاييس، اتّبِع الخطوات التالية:
- انتقِل إلى لوحة بيانات الأداءفي Firebase console.
- انقر على بطاقة مقياس فارغة، ثم اختَر مقياسًا حاليًا لإضافته إلى لوحتك.
- انقر على في بطاقة مقياس تم ملؤها للاطّلاع على مزيد من الخيارات، مثلاً لاستبدال مقياس أو إزالته.
تعرض لوحة المقاييس بيانات المقاييس التي تم جمعها بمرور الوقت، وذلك في شكل رسومي وتغيير عددي بالنسبة المئوية.
مزيد من المعلومات عن استخدام لوحة البيانات.
عرض التتبُّعات وبياناتها
للاطّلاع على التتبُّعات، انتقِل إلى الـ أداء لوحة البيانات في الـ Firebase وحدة التحكّم، وانتقِل للأسفل إلى جدول التتبُّعات، ثم انقر على علامة التبويب الفرعية المناسبة. يعرض الجدول بعض أهم المقاييس لكل تتبُّع، ويمكنك حتى ترتيب القائمة حسب الـ نسبة المئوية للتغيير في مقياس معيّن.
Performance Monitoring توفّر صفحة لتحديد المشاكل وحلّها في Firebase console، وهي تسلّط الضوء على التغييرات في المقاييس، ما يسهّل عليك معالجة مشاكل الأداء وتقليل تأثيرها على تطبيقاتك والمستخدِمين بسرعة. يمكنك استخدام صفحة تحديد المشاكل وحلّها عندما تتعرّف على مشاكل محتملة في الأداء، مثلاً في السيناريوهات التالية:
- تختار مقاييس ذات صلة على لوحة البيانات وتلاحظ فرقًا كبيرًا.
- في جدول التتبُّعات، ترتّب البيانات لعرض أكبر الفروق في أعلى الجدول، وتلاحظ تغييرًا كبيرًا بالنسبة المئوية.
- تتلقّى تنبيهًا عبر البريد الإلكتروني لإعلامك بمشكلة في الأداء.
يمكنك الوصول إلى صفحة تحديد المشاكل وحلّها بالطرق التالية:
- في لوحة بيانات المقاييس، انقر على الزر عرض تفاصيل المقياس.
- في أي بطاقة مقياس، انقر على
=> عرض التفاصيل . تعرض صفحة تحديد المشاكل وحلّها معلومات عن المقياس الذي اخترته. - في جدول التتبُّعات، انقر على اسم تتبُّع أو أي قيمة مقياس في الصف المرتبط بهذا التتبُّع.
- في تنبيه عبر البريد الإلكتروني، انقر على التحقيق الآن.
عند النقر على اسم تتبُّع في جدول التتبُّعات، يمكنك بعد ذلك التوغل في تفاصيل المقاييس التي تهمّك. انقر على الزر
تتم فلترة بيانات "مراقبة الأداء في Firebase" حسب السمة" />
- يمكنك الفلترة حسب إصدار التطبيق لعرض بيانات عن إصدار سابق أو أحدث إصدار.
- يمكنك الفلترة حسب الجهاز للتعرّف على كيفية تعامل الأجهزة القديمة مع تطبيقك.
- يمكنك الفلترة حسب البلد للتأكّد من أنّ موقع قاعدة البيانات لا يؤثر في منطقة معيّنة
مزيد من المعلومات عن عرض بيانات التتبُّعات.
الخطوات التالية
مزيد من المعلومات عن استخدام السمات لفحص بيانات الأداء.
مزيد من المعلومات عن كيفية تتبُّع مشاكل الأداء في الـ Firebase console.
إعداد التنبيهات لطلبات الشبكة التي تؤدي إلى تدهور أداء تطبيقك. على سبيل المثال، يمكنك ضبط تنبيه عبر البريد الإلكتروني لـ فريقك إذا تجاوز وقت الردّ لنمط عنوان URL معيّن حدًا معيّنًا.
- يمكنك الاطّلاع على تقارير مفصّلة عن جلسات المستخدِمين، حيث يمكنك الاطّلاع على تتبُّع معيّن في سياق زمني لتتبُّعات أخرى تم جمعها خلال الجلسة نفسها.