توفر هذه الصفحة نصائح لتحديد المشاكل وحلّها لبدء استخدام Performance Monitoring أو باستخدام ميزات وأدوات Performance Monitoring
عمليات التحقّق الأولى لتحديد المشاكل وحلّها
إنّ عمليتَي التحقّق التاليتَين هما أفضل الممارسات العامة التي يُنصح بها لأيّ مستخدم. قبل إجراء المزيد من خطوات استكشاف الأخطاء وإصلاحها.
1- التحقّق من رسائل السجلّ لأحداث الأداء
تحقَّق من رسائل السجلّ للتأكّد من التقاط حزمة تطوير البرامج (SDK) لنظام التشغيل Performance Monitoring. أحداث الأداء.
كيفية عرض رسائل سجلّ أحداث الأداء
يمكنك تفعيل تسجيل تصحيح الأخطاء لـ Performance Monitoring في وقت الإصدار من خلال إضافة
<meta-data>
. إلى ملفAndroidManifest.xml
في تطبيقك، على النحو التالي:<application> <meta-data android:name="firebase_performance_logcat_enabled" android:value="true" /> </application>
تحقَّق من رسائل السجلّ بحثًا عن أي رسائل خطأ.
يضع "Performance Monitoring" علامة
FirebasePerformance
على رسائل السجلّ الخاصة به. استخدام Logcat يمكنك، على وجه التحديد، عرض تتبع المدة وشبكة HTTP/S طلب التسجيل من خلال تشغيل الأمر التالي:adb logcat -s FirebasePerformance
راجِع الأنواع التالية من السجلّات التي تشير إلى أنّ Performance Monitoring تسجيل أحداث الأداء:
Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URL
Logging network request trace: URL
انقر على عنوان URL للاطّلاع على بياناتك في "وحدة تحكُّم Firebase". قد يستغرق الأمر بعض أوقات لتعديل البيانات في لوحة البيانات.
إذا لم يكن تطبيقك يسجّل أحداث الأداء، راجِع مقالة تحديد المشاكل وحلّها. النصائح.
2- التحقق من لوحة بيانات حالة Firebase
اطّلِع على لوحة بيانات حالة Firebase في حال هناك انقطاع في الخدمة معروف في Firebase أو Performance Monitoring.
بدء استخدام Performance Monitoring
إذا كنت بصدد بدء استخدام Performance Monitoring (iOS والإصدارات الأحدث | Android | الويب)، يمكن أن تساعدك الخطوات التالية المتعلّقة بتحديد المشاكل وحلّها في حلّ المشاكل المتعلّقة برصد Firebase لحزمة SDK أو عرض بيانات الأداء الأولى في وحدة تحكّم Firebase.
تمت إضافة حزمة SDK إلى التطبيق ولكن وحدة التحكم ما زالت تنص على إضافة حزمة SDK
يمكن لمنصّة Firebase اكتشاف ما إذا كنت قد أضفت حزمة تطوير البرامج (SDK) Performance Monitoring بنجاح إلى تطبيقك. عندما يتلقّى معلومات عن الأحداث (مثل التفاعلات مع التطبيقات) من تطبيقك سيتم عادةً عرض الأداء خلال 10 دقائق من بدء تشغيل التطبيق لوحة البيانات عرض رسالة "تم اكتشاف حزمة تطوير برامج (SDK)" في وحدة تحكم Firebase . بعد ذلك، في غضون 30 دقيقة، تعرض لوحة البيانات البيانات الأولية التي تمت معالجتها.
إذا مرّ أكثر من 10 دقائق على إضافة أحدث إصدار من حزمة تطوير البرامج (SDK) إلى تطبيقك، ولم يظهر أي تغيير بعد، يمكنك الاطّلاع على رسائل logging للتأكّد من أنّ Performance Monitoring يسجّل الأحداث. جرِّب الخطوات المناسبة لتحديد المشاكل وحلّها كما هو موضّح أدناه: تحديد وحلّ مشاكل رسالة رصد حزمة تطوير البرامج (SDK) المتأخّرة
يسجِّل التطبيق الأحداث: تحديد المشاكل وحلّها الخطوات
يُرجى التأكّد من استخدام الإصدار 19.1.0 من حزمة تطوير البرامج (SDK) لنظام التشغيل Performance Monitoring أو إصدار أحدث (أو Firebase BoM 26.3.0 أو إصدار أحدث)، يُرجى الاطّلاع على ملاحظة الإصدار.
إذا كنت لا تزال تتطوّر محليًا، حاوِل إنشاء المزيد من الأحداث للبيانات. المجموعة:
- إنشاء أحداث من خلال تبديل تطبيقك بين المقدّمة والخلفية عدة مرات، والتفاعل مع تطبيقك من خلال التنقّل بين الشاشات، و/أو بدء طلبات الشبكة
تأكَّد من أنّ إعدادات Firebase ملف (
google-services.json
) هو تمت إضافته بشكل صحيح إلى تطبيقك، وأنك لم تعدّل الملف. على وجه التحديد، تحقق مما يلي:لا يتم إلحاق اسم ملف الإعدادات بأحرف إضافية، مثل
(2)
.يتوفّر ملف الإعداد في دليل الوحدة (على مستوى التطبيق) لتطبيقك.
رقم تعريف تطبيق Android (
mobilesdk_app_id
) في Firebase المُدرَج في ملف الإعداد الصحيح لتطبيقك. يمكنك العثور على رقم تعريف تطبيق Firebase في تطبيقاتك. بطاقة من مشروع settings الخاص بك الإعدادات.
إذا كان هناك أي خطأ يبدو في ملف الإعداد في تطبيقك، جرِّب ما يلي:
احذف ملف الإعداد المتوفّر حاليًا في تطبيقك.
اتّبِع هذه التعليمات من أجل عليك تنزيل ملف إعداد جديد وإضافته إلى تطبيق Android.
إذا كانت حزمة SDK تسجِّل الأحداث ويبدو أنّه تم إعداد كل شيء بشكل صحيح، ولكن لا تزال رسالة رصد حزمة SDK أو البيانات التي تمت معالجتها غير ظاهرة (بعد 10 دقائق)، يُرجى التواصل مع فريق دعم Firebase.
لا يسجِّل التطبيق الأحداث: خطوات تحديد المشاكل وحلّها
تحقَّق من إعداد مكوّن Gradle الإضافي Performance Monitoring، كما يلي:
تأكد من أضاف المكون الإضافي بشكل صحيح. على وجه التحديد، تحقق مما يلي:
- لقد أضفت المكوّن الإضافي
(
) بوصة ملفapply plugin: 'com.google.firebase.firebase-perf' build.gradle
الوحدة (على مستوى التطبيق). - لقد ضمّنت تبعية classpath للمكون الإضافي.
(
) في ملفclasspath 'com.google.firebase:perf-plugin:1.4.2' build.gradle
على مستوى المشروع.
- لقد أضفت المكوّن الإضافي
(
تأكد من أن المكوّن الإضافي لا يتم إيقافها من خلال أي مما يلي العلامات:
instrumentationEnabled
في الوحدة (على مستوى التطبيق) ملفbuild.gradle
firebasePerformanceInstrumentationEnabled
في ملفgradle.properties
تأكَّد من أنّ حزمة تطوير البرامج (SDK) "Performance Monitoring" ليست غير مفعَّل من خلال أي من العلامات التالية في ملف
AndroidManifest.xml
:firebase_performance_collection_enabled
firebase_performance_collection_deactivated
تأكَّد من عدم إيقاف "Performance Monitoring" في
إذا لم تتمكّن من العثور على أي ميزة تم إيقافها في تطبيقك، تواصَل مع فريق دعم Firebase.
تشير وحدة التحكّم إلى أنّ حزمة تطوير البرامج (SDK) ولكن لا يتم عرض أي بيانات
يعالج Performance Monitoring بيانات أحداث الأداء قبل عرضها في لوحة بيانات الأداء.
في حال مرور أكثر من 24 ساعة على "رصد حزمة تطوير البرامج (SDK)" ظهرت رسالة، وما زلت لا ترى البيانات، فتحقق من لوحة بيانات حالة Firebase في حالة وجود انقطاع الخدمة المعروف. إذا لم يكن هناك انقطاع في الخدمة، يُرجى التواصل مع فريق دعم Firebase.
الإجراءات العامّة لتحديد المشاكل وحلّها
إذا أضفت حزمة SDK بنجاح وكنت تستخدم Performance Monitoring في تطبيقك، يمكن أن تساعدك نصائح تحديد المشاكل وحلّها التالية في حلّ المشاكل العامة التي تتعلّق بميزات Performance Monitoring وأدواتها.
تعذُّر تسجيل التطبيق أحداث الأداء
في حال عدم ظهور رسائل تسجيل الأداء المتعلقة بالأداء الأحداث، جرِّب الخطوات التالية لتحديد المشاكل وحلّها:
تحقَّق من إعداد المكوّن الإضافي Performance Monitoring Gradle، على النحو التالي:
تأكد من أضاف المكون الإضافي بشكل صحيح. ويجب تحديدًا التحقّق مما يلي:
- لقد أضفت المكوّن الإضافي
(
) بوصة ملفapply plugin: 'com.google.firebase.firebase-perf' build.gradle
الوحدة (على مستوى التطبيق). - لقد أدرجت التبعية لمسار الطباعة للإضافة
(
) في ملفclasspath 'com.google.firebase:perf-plugin:1.4.2' build.gradle
على مستوى المشروع.
- لقد أضفت المكوّن الإضافي
(
تأكد من أن المكوّن الإضافي لا يتم إيقافها من خلال أي مما يلي العلامات:
instrumentationEnabled
في الوحدة (على مستوى التطبيق) ملفbuild.gradle
firebasePerformanceInstrumentationEnabled
في ملفgradle.properties
تأكَّد من أنّ حزمة تطوير البرامج (SDK) "Performance Monitoring" ليست غير مفعَّل من خلال أي من العلامات التالية في ملف
AndroidManifest.xml
:firebase_performance_collection_enabled
firebase_performance_collection_deactivated
تأكَّد من أنّ Performance Monitoring غير متوقف أثناء وقت التشغيل.
إذا لم تتمكن من العثور على أي عنصر متوقف في تطبيقك، التواصل مع فريق دعم Firebase.
لوحة بيانات الأداء لا تتضمّن بيانات تتبُّع الشاشة
إذا كانت بيانات تتبُّع عرض الشاشة غير متوفّرة، جرِّب ما يلي: خطوات استكشاف الأخطاء وإصلاحها:
احرِص على استخدام أحدث إصدار من حزمة تطوير البرامج (SDK) لنظام التشغيل Android. (الإصدار 21.0.1). لا تتوفّر عمليات تتبُّع عرض الشاشة إلا مع الإصدار 15.2.0 أو الإصدارات الأحدث.
تأكَّد من عدم إيقاف الأجهزة يدويًا. التسريع للشاشة.
تأكَّد من عدم استخدام DexGuard أو Jack. Performance Monitoring هو غير متوافق مع سلاسل الأدوات هذه.
توقِف DexGuard التجميع التلقائي لبدء استخدام التطبيق وظهوره في المقدّمة وعمليات البحث التي تتم في الخلفية داخل التطبيق. ومع ذلك، تتبُّع الرموز المخصّصة أن يعمل بشكل طبيعي إذا كان تطبيقك يستخدم DexGuard.
تم إيقاف Jack نهائيًا بشكل عام في تطبيقك.
لوحة بيانات الأداء لا تتضمّن بيانات التتبّع المخصّصة
هل ترى بيانات الأداء للتتبُّعات المجمّعة تلقائيًا ولكن ليس عمليات تتبُّع الرموز المخصّصة يُرجى اتّباع الخطوات التالية لتحديد المشاكل وحلّها:
إذا كنت تستخدم عمليات تتبُّع الرموز المخصّصة من خلال Trace API تحقَّق من إعدادات عمليات التتبُّع، لا سيّما ما يلي:
- يجب أن تستوفي أسماء عمليات تتبُّع الرموز البرمجية المخصّصة والمقاييس المخصّصة
المتطلبات التالية: عدم استخدام مسافات بيضاء في البداية أو النهاية، وعدم استخدام علامة underscore
(
_
) في البداية، والحد الأقصى للطول هو 32 حرفًا. - يجب بدء جميع آثار الأنشطة وإيقافها. أي أثر لا يبدأ، ولا أو توقفوا، أو توقفوا قبل بدئهم العمل.
- يجب أن تستوفي أسماء عمليات تتبُّع الرموز البرمجية المخصّصة والمقاييس المخصّصة
المتطلبات التالية: عدم استخدام مسافات بيضاء في البداية أو النهاية، وعدم استخدام علامة underscore
(
في حال كنت تستخدم عمليات تتبُّع الرموز المخصّصة من خلال
@AddTrace
التدوين، يمكنك التحقق من إعداد مكوّن Gradle الإضافي Performance Monitoring:تأكَّد من إضافة المكوّن العميق بشكل صحيح. على وجه التحديد، تحقق مما يلي:
- لقد أضفت المكوّن الإضافي
(
) بوصة ملفapply plugin: 'com.google.firebase.firebase-perf' build.gradle
الوحدة (على مستوى التطبيق). - لقد أدرجت التبعية لمسار الطباعة للإضافة
(
) في ملفclasspath 'com.google.firebase:perf-plugin:1.4.2' build.gradle
على مستوى المشروع.
- لقد أضفت المكوّن الإضافي
(
تأكد من أن المكوّن الإضافي لا يتم إيقافها من خلال أي مما يلي العلامات:
instrumentationEnabled
في الوحدة (على مستوى التطبيق) ملفbuild.gradle
firebasePerformanceInstrumentationEnabled
في ملفgradle.properties
تحقَّق من رسائل السجلّ للتأكّد من يسجِّل Performance Monitoring عمليات تتبُّع الرموز المخصّصة المتوقّعة.
إذا كان Performance Monitoring يسجّل الأحداث، ولكن لا يتم عرض أي بيانات بعد 24 ساعة، يمكنك التواصل مع فريق دعم Firebase.
لوحة بيانات الأداء لا تتوفّر بيانات طلب الشبكة
إذا لم تتوفّر بيانات طلبات الشبكة، جرِّب الخطوات التالية لتحديد المشاكل وحلّها:
بالنسبة إلى تطبيقات Android، يفعِّل المكوِّن الإضافي Performance Monitoring لنظام Gradle الأدوات التي يوفر المراقبة التلقائية طلبات شبكة HTTP/S: تحقَّق مما يلي:
تأكد من أضاف المكون الإضافي بشكل صحيح. على وجه التحديد، تحقق مما يلي:
- لقد أضفت المكوّن الإضافي
(
) بوصة ملفapply plugin: 'com.google.firebase.firebase-perf' build.gradle
الوحدة (على مستوى التطبيق). - لقد ضمّنت تبعية classpath للمكون الإضافي.
(
) في ملفclasspath 'com.google.firebase:perf-plugin:1.4.2' build.gradle
على مستوى المشروع.
- لقد أضفت المكوّن الإضافي
(
تأكد من أن المكوّن الإضافي لا يتم إيقافها من خلال أي مما يلي العلامات:
instrumentationEnabled
في الوحدة (على مستوى التطبيق) ملفbuild.gradle
firebasePerformanceInstrumentationEnabled
فيملفgradle.properties
تحقق من عدم توافق مكتبة الشبكة. Performance Monitoring تلقائيًا تجمع مقاييس طلبات الشبكة التي تستخدم الشبكات التالية المكتبات: OkHttp 3.x.x وURLConnection في Java وApache HttpClient.
لاحظ أنه يمكنك إضافة مراقبة مخصصة للشبكة الطلبات.
يُرجى الانتباه إلى ما يلي:
اعتمادًا على سلوك الرمز البرمجي ومكتبات الشبكات المستخدمة من قِبل الرمز، فإن Performance Monitoring قد يتضمن فقط تقارير حول طلبات الشبكة التي مكتملة. وهذا يعني أن اتصالات HTTP/S المتبقية مفتوحة قد لا الإبلاغ عنها.
تطبيق "Performance Monitoring" غير متوافق مع DexGuard وJack.
- يوقف DexGuard مراقبة طلبات الشبكة عبر HTTP/S.
- تم إيقاف Jack نهائيًا بشكل عام في تطبيقك.
لا يُبلغ Performance Monitoring عن طلبات الشبكة التي تحتوي على عناوين
Content-Type
غير صالحة. ومع ذلك، فإن طلبات الشبكة بدون سيتم قبولContent-Type
عنوان.
لا يتم تجميع بيانات طلبات الشبكة على النحو المتوقّع
مزيد من المعلومات حول كيفية تجميع Performance Monitoring لطلب الشبكة البيانات ضمن أنماط عناوين URL.
يمكنك أيضًا تجربة عنوان URL المخصّص أنماط!
الأسئلة الشائعة
ماذا حدث لأهم المشاكل في بطاقة الأداء في صفحة المشروع الرئيسية؟
استبدلنا أهم المشاكل بـ التنبيهات الأخيرة كإجراء متابعة بشأن آخر طرح للتنبيهات، والذي يخطرك تلقائيًا عند الحدود التي وضعتها قد تم تجاوزها. تم إيقاف المشاكل نهائيًا واستبدالها بالتنبيهات.
تصفِّح أداة اختيار التطبيقات في أعلى بطاقة "الأداء" إدخالات التنبيهات ضمن التنبيهات الأخيرة. لا يتم عرض سوى آخر ثلاثة تنبيهات للتطبيقات التي اخترتها.
لمعرفة المزيد من المعلومات عن التنبيهات، يُرجى الاطّلاع على إعداد تنبيهات لمشاكل الأداء.
ماذا حدث لإمكانية وضع حدود للمشكلات في وحدة التحكم؟
تتيح Performance Monitoring التنبيهات للمقاييس التي تتجاوز الحدود الدنيا المحدّدة. لتجنب الالتباس مع هذه الحدود القابلة للتهيئة لمقاييس الأداء، فقد أزلنا إمكانية تهيئة الحدود المشاكل:
ما الذي حدث لمعلومات "التفاصيل والمقاييس" في وحدة تحكّم Firebase؟
لقد استبدلنا صفحات التفاصيل والمقاييس بصفحة مركزية تمت إعادة تصميمها حديثًا واجهة المستخدم (UI) لتحسين طريقة استكشاف الأخطاء وإصلاحها. توفّر واجهة مستخدِم تحديد المشاكل وحلّها الجديدة هذه الوظائف الأساسية نفسها التي كانت توفّرها "التفاصيل" و"المقاييس". لمزيد من المعلومات حول تحديد المشاكل وحلّها، يُرجى مراجعة عرض المزيد من البيانات الخاصة بعملية تتبُّع معيّنة
لماذا عدد العينات ليس كما أتوقع؟
يجمع تطبيق Performance Monitoring بيانات الأداء من أجهزة مستخدمي تطبيقك. إذا كان لدى التطبيق العديد من المستخدمين أو إذا كان التطبيق يُنشئ قدرًا كبيرًا من الأداء نشاطًا، قد يقصر Performance Monitoring جمع البيانات على مجموعة فرعية من الأجهزة تقليل عدد الأحداث التي تتم معالجتها. هذه الحدود عالية بما يكفي لكي تظل قيم المقاييس تمثل تجربة المستخدم في التطبيق، حتى مع انخفاض عدد الأحداث.
لإدارة حجم البيانات التي نجمعها، يستخدم "Performance Monitoring" ما يلي: خيارات أخذ العينات:
الحدّ من معدّل الزحف على الجهاز فقط: لمنع الجهاز من إرسال صور متسلسلة مفاجئة فإننا نحد من عدد عمليات تتبع طلبات الشبكة والرموز التي يتم إرسالها من الجهاز إلى 300 حدث كل 10 دقائق. تحمي هذه الطريقة الجهاز من الأدوات المتكررة التي يمكنها إرسال كميات كبيرة من بيانات الأداء، ويمنع جهازًا واحدًا من تغيير قياسات الأداء.
أخذ العينات الديناميكي: يجمع Performance Monitoring حدًا أقصى يبلغ 100 مليون تقريبًا. أحداث لعمليات تتبُّع الرمز و100 مليون لتتبُّع طلبات الشبكة لكل تطبيق يوميًا بين جميع مستخدمي التطبيق. يتم جلب معدل أخذ العينات الديناميكي على الأجهزة (باستخدام Firebase Remote Config) لتحديد ما إذا كان ينبغي لجهاز عشوائي التقاط آثار وإرسالها. لن يكون بإمكان الجهاز الذي لم يتم تحديده أخذ العيّنات أن لإرسال أي أحداث. ويكون معدل العينة الديناميكي خاصًا بالتطبيق ويتكيف مع لضمان بقاء الحجم الإجمالي للبيانات التي تم جمعها أقل من الحد المسموح به.
تُرسِل جلسات المستخدمين بيانات إضافية ومفصّلة من جهاز المستخدم، ما يتطلّب مزيدًا من الموارد لتسجيل البيانات وإرسالها. للحدّ من تأثير جلسات المستخدِمين، قد يفرض Performance Monitoring أيضًا قيودًا على عدد الجلسات.
تقييد المعدّل من جهة الخادم: لضمان عدم تجاوز التطبيقات العينات الحد، قد يستخدم "Performance Monitoring" أخذ العينات من جهة الخادم لحذف بعض الأحداث. المستلمة من الأجهزة. وعلى الرغم من أن هذا النوع من التقييد لا يغير فعالية مقاييسنا، فقد يتسبب ذلك في حدوث تحولات طفيفة في النمط، بما في ذلك التالي:
- ويمكن أن يختلف عدد الآثار عن عدد المرات التي يكون فيها جزء من تم تنفيذ الرمز البرمجي.
- قد يكون لكل تتبّع مرتبط بشكل وثيق في الرمز عددًا مختلفًا من العينات.
ماذا حدث لعلامة تبويب المشاكل في وحدة التحكّم؟
استبدلنا علامة التبويب "المشكلات" بمقدمة "التنبيهات" التي تُعلمك تلقائيًا عند تجاوز الحدود الدنيا التي وضعتها. أنت لا بحاجة إلى التحقّق يدويًا من وحدة تحكّم Firebase لتحديد حالة العتبة. وللتعرّف على مزيد من المعلومات عن "التنبيهات"، اطّلِع على إعداد تنبيهات لمشاكل الأداء.
ماذا حدث لعلامتَي التبويب على الجهاز والشبكة في وحدة التحكّم؟ كيف يمكنني عرض آثار الأنشطة التي كانت على تلك الصفحات؟
أعدنا تصميم قسم Performance Monitoring في وحدة تحكّم Firebase لكي تعرض علامة التبويب لوحة البيانات المقاييس الرئيسية وجميع عمليات التتبّع في مساحة واحدة. بالنسبة في إطار عملية إعادة التصميم، أزلنا صفحتَي على الجهاز والشبكة.
يحتوي جدول بيانات التتبُّع في أسفل علامة التبويب لوحة البيانات على جميع العناصر المعلومات التي يتم عرضها في علامتَي التبويب على الجهاز والشبكة، ولكن مع بعض الميزات المضافة، بما في ذلك القدرة على تصنيف آثار الأنشطة حسب النسبة المئوية التغيير بالنسبة لمقياس معين. لعرض جميع المقاييس والبيانات لعنصر معيّن انقر فوق اسم التتبع في جدول التتبع.
يمكنك عرض عمليات التتبُّع في علامات التبويب الفرعية التالية من جدول التتبُّع:
- عمليات تتبُّع طلبات الشبكة (جاهزة أو مخصّصة) - علامة التبويب الفرعية طلبات الشبكة
- عمليات تتبُّع الرموز المخصّصة: علامة التبويب الفرعية عمليات تتبُّع الرموز المخصّصة
- عمليات تتبُّع بدء التطبيق، ومقدمة التطبيق، وتتبّع التطبيق في الخلفية - علامات التبويب الفرعية عمليات التتبُّع المخصّصة
- عمليات تتبُّع عرض الشاشة: علامة التبويب الفرعية عرض الشاشة
- عمليات تتبُّع تحميل الصفحة: علامة التبويب الفرعية تحميل الصفحة
للحصول على تفاصيل عن جدول آثار الأنشطة وعرض المقاييس والبيانات، يُرجى الانتقال إلى صفحة "نظرة عامة" في وحدة التحكّم (iOS+ | Android | الويب).
لماذا يختلف عدد اللقطات البطيئة والثابتة عن ما توقّعته؟
يتم احتساب إطارات العرض البطيء والإطارات الثابتة باستخدام جهاز تم افتراضه معدل التحديث 60 هرتز. إذا كان معدّل تحديث الشاشة على الجهاز أقل من 60 هرتز، سيكون وقت عرض كل لقطة أبطأ لأنّه يتم عرض عدد أقل من اللقطات في الثانية. قد تؤدي أوقات العرض الأبطأ إلى الإبلاغ عن المزيد من اللقطات البطيئة أو الثابتة. لأنّه سيتم عرض المزيد من اللقطات بشكل أبطأ أو سيتم تجميدها. ومع ذلك، إذا لم يتم تثبيت من خلال معدّل إعادة التحميل أعلى من 60 هرتز، سيتم عرض كل إطار بشكل أسرع. ويمكن أن يؤدي ذلك إلى عدد أقل من اللقطات البطيئة أو الثابتة التي يتم الإبلاغ عنها. هذا هو أحد الصعوبات التي تواجهك حاليًا في حزمة SDK لنظام التشغيل Performance Monitoring.
لماذا يتعذّر عليّ رؤية عمليات تتبُّع الأجزاء؟
للاطّلاع على أداء الأجزاء بالإضافة إلى النشاط على التطبيقات، تأكَّد من يستخدم تطبيقك الإصدار 20.1.0 أو الإصدارات الأحدث من حزمة تطوير البرامج (SDK) لنظام التشغيل Performance Monitoring. للتعلّم مزيد من المعلومات، راجِع المقالة إضافة "مراقبة الأداء" إلى تطبيقك.
كيف يمكنني معرفة آثار الأنشطة المرتبطة بالأجزاء والأنشطة؟
يستند كلّ من تتبُّع المقتطفات والأنشطة إلى اسم الفئة كما هو محدّد في تطبيقك. يحتوي كل عملية تتبُّع للشاشة على البادئة st. متبوعة باسم الفئة. في وحدة تحكم Firebase، البادئة هي تمت إزالته. لمزيد من المعلومات، يُرجى الاطّلاع على التعرّف على بيانات أداء عرض الشاشة (تطبيقات Apple وAndroid) .
لماذا يظهر عدد أقل من عمليات تتبُّع للأجزاء مقارنةً بالتتبُّعات الأخرى؟
يُجري Performance Monitoring أخذ عينات من الأحداث في جميع الأحداث التي يتم جمعها على الجهاز. يتيح لنا هذا النهج جمع الحد الأدنى من الأحداث المطلوبة من أجهزة المستخدمين لتوفير مقاييس الأداء.
كيف يتم إشعاري عند وجود مشكلة في أداء عرض التطبيق؟
يتيح لك Performance Monitoring إعداد تنبيهات للمقاييس التي تهمّك. لإنشاء تتبُّع عرض الشاشة، يمكنك إعداد التنبيهات لإعلامك عند تتجاوز النسبة المئوية للّقطات البطيئة والثابتة الحدّ الذي ضبطته.
يستغرق إنشاء موقعي الإلكتروني وقتًا طويلاً بعد تفعيل مكوّن Gradle الإضافي Performance Monitoring. الطريقة هل يمكنني تحسين ذلك؟
يستخدم Performance Monitoring لنظام التشغيل Android أدوات فحص الرمز الثنائي لتوفير بعض الميزات الجاهزة للاستخدام، مثل مراقبة طلبات الشبكة باستخدام بروتوكول HTTP/S. وكجزء من التجميع، تتطلب هذه العملية التكرار من خلال جميع الفئات لتطبيقك (بما في ذلك التبعيات) لقياس الرمز البرمجي الضروري في لقياس أداء طلب الشبكة لتطبيقك.
في ما يلي بعض المساهمين الأساسيين لزيادة وقت الإصدار:
- عدد الصفوف أو الملفات
- حجم كل فئة من هذه الفئات (سطور الرمز)
- إعدادات جهازك
- الإصدار الأولي مقابل الإصدار اللاحق (عادةً ما تكون الإصدارات اللاحقة أسرع من الإصدار الأولي)
لتحسين وقت التصميم، يجب مراعاة تقسيم الرمز إلى وحدات.
بدءًا من الإصدار 1.3.3 من المكوّن الإضافي Performance Monitoring، ركّزنا على إجراء تحسينات مهمة في معالجة الإنشاء المتزايد وتخزين بيانات الإدخال في المكتبة. للحصول على أحدث التحسينات في وقت إنشاء التطبيق، تأكَّد من استخدام أحدث إصدار من المكوّن الإضافي (الإصدار 1.4.2).
لاحظ أنه يمكنك تعطيل المكوّن الإضافي "Performance Monitoring" لإصدارات تصحيح الأخطاء على الجهاز إذا كنت لا تريد إطالة مدة الإصدار. ومع ذلك، لا يُنصح باستخدام هذا الأسلوب في تصميمات الإنتاج، فقد يؤدي إلى مقاييس أداء فائتة لطلبات الشبكة في تطبيقك.
ماذا أفعل إذا ظهرت لي أخطاء في الإصدار بسبب مكتبات غير متوافقة مع المكوّن الإضافي "Performance Monitoring" لنظام Gradle؟
يستخدم تطبيق Performance Monitoring لنظام التشغيل Android أداة رمز البايت لتوفير بعض ميزات جاهزة مثل مراقبة طلبات شبكة HTTP/S. وكجزء من التجميع، تتطلب هذه العملية التكرار من خلال جميع الفئات لتطبيقك (بما في ذلك التبعيات) لقياس الرمز البرمجي الضروري في لقياس أداء طلب الشبكة لتطبيقك.
إذا ظهرت لك أخطاء في الإصدار مثل JSR/RET are not supported with
computeFrames option
أو أخطاء مشابهة بعد الدمج مع المكوّن الإضافي Performance Monitoring، يمكنك اتّباع الخطوات التالية:
قد يكون هذا بسبب أن لديك أيضًا تبعية إلى مكتبة غير متوافقة
باستخدام المكوّن الإضافي Performance Monitoring لنظام Gradle
لتفادي ذلك، يمكنك استبعاد الفئات/المكتبات غير المتوافقة من الاستخدام عن طريق اتباع الخطوات التالية:
- يُرجى التحديث إلى آخر إصدار من مكوّن Gradle الإضافي Performance Monitoring (الحد الأدنى الإصدار 1.4.0).
- حدِّث الإصدار 7.2.0 من المكوّن الإضافي لنظام Gradle المتوافق مع Android أو إصدار أحدث.
- أضِف العلامة التالية إلى ملف
build.gradle
للوحدة (على مستوى التطبيق) لاستبعاد الفئات/المكتبات غير المتوافقة من قياسها: للاطّلاع على مزيد من المعلومات حول السمةandroid { // ... androidComponents { onVariants(selector().all(), { instrumentation.excludes.add("example.incompatible.library") }) } }
exclude
في واجهة برمجة التطبيقاتInstrumentation
الخاصة بالمكوّن الإضافي لنظام Gradle المتوافق مع Android، يمكنك الاطّلاع على أداة قياس الأداء.
يُرجى الإبلاغ عن مشكلة في GitHub عندما تواجه أخطاء في الإصدار بسبب مكتبات غير متوافقة، وذلك حتى أن يتم استبعادها من قياس حالة التطبيق في المكوّن الإضافي Performance Monitoring.
يستغرق تصدير بيانات Performance Monitoring إلى BigQuery وقتًا أطول من المتوقّع. هل هذا ليس في الوقت الفعلي؟
في حال تفعيل دمج BigQuery من أجل Firebase Performance Monitoring، سيتم تفعيل بياناتك سيتم تصديرها إلى BigQuery بعد 12 إلى 24 ساعة من نهاية اليوم (بتوقيت المحيط الهادئ الوقت).
على سبيل المثال، ستكون بيانات 19 نيسان (أبريل) متاحة في BigQuery في 20 نيسان (أبريل). بين 12:00 ظهرًا ومنتصف الليل (جميع التواريخ والأوقات بتوقيت المحيط الهادئ).
معالجة البيانات في الوقت الفعلي تقريبًا وعرضها
ماذا يحدث "في الوقت الفعلي تقريبًا" بيانات الأداء؟
جمعت "Firebase Performance Monitoring" بيانات الأداء فور ورودها، ما يؤدي إلى عرض البيانات في الوقت الفعلي تقريبًا في وحدة تحكم Firebase. تمّت معالجته عرض البيانات في وحدة التحكم خلال بضع دقائق من جمعها، وبالتالي مصطلح "الوقت الفعلي تقريبًا".
للاستفادة من معالجة البيانات في الوقت الفعلي تقريبًا، يُرجى التأكّد من أنّ تطبيقك يستخدم حزمة SDK متوافقة في الوقت الفعلي الإصدار.
كيف يمكنني الحصول على بيانات أداء تطبيقي في الوقت الفعلي تقريبًا؟
للاستفادة من ميزة معالجة البيانات في الوقت الفعلي تقريبًا، ما عليك سوى التأكّد من أنّ تطبيقك يستخدم إصدارًا من حزمة Performance Monitoring SDK متوافقًا مع معالجة data في الوقت الفعلي.
في ما يلي إصدارات حزمة SDK المتوافقة في الوقت الفعلي:
- iOS: الإصدار 7.3.0 أو إصدار أحدث
- tvOS: الإصدار 8.9.0 أو إصدار أحدث
- Android: الإصدار 19.0.10 أو إصدار أحدث (أو الإصدار Firebase Android BoM 26.1.0 أو إصدار أحدث)
- الويب: الإصدار 7.14.0 أو إصدار أحدث
ننصح دائمًا باستخدام أحدث إصدار من حزمة SDK، ولكن مع الإصدار المُدرَج أعلاه سيتيح لتطبيق "Performance Monitoring" معالجة بياناتك بشكل شبه فعلي. الوقت.
ما هي إصدارات حزمة تطوير البرامج (SDK) "Performance Monitoring" التي تُعتبر متوافقة في الوقت الفعلي؟
في ما يلي إصدارات حزمة تطوير البرامج (SDK) المتوافقة مع معالجة البيانات في الوقت الفعلي:
- iOS: الإصدار 7.3.0 أو إصدار أحدث
- tvOS: الإصدار 8.9.0 أو إصدار أحدث
- Android: الإصدار 19.0.10 أو إصدار أحدث (أو الإصدار Firebase Android BoM 26.1.0 أو إصدار أحدث)
- الويب: الإصدار 7.14.0 أو إصدار أحدث
ننصح دائمًا باستخدام أحدث إصدار من حزمة SDK، ولكن مع الإصدار المُدرَج أعلاه سيتيح لتطبيق "Performance Monitoring" معالجة بياناتك بشكل شبه فعلي. الوقت.
ماذا يحدث إذا لم أحدّث تطبيقي لاستخدام إصدار حزمة SDK متوافق في الوقت الفعلي؟
إذا لم يكن تطبيقك يستخدم إصدارًا متوافقًا من حزمة SDK في الوقت الفعلي، سيستمر ظهور كل بيانات أداء تطبيقك في وحدة تحكُّم Firebase. ومع ذلك، فإن الشاشة من بيانات الأداء بحوالي 36 ساعة من وقت الأولية.
تم التحديث إلى إصدار حزمة SDK متوافق في الوقت الفعلي، ولكن بعض المستخدمين لا تزال تستخدم الإصدارات القديمة من تطبيقي. هل أستمر في رؤية أدائها البيانات في وحدة تحكّم "Firebase"؟
نعم. بغض النظر عن إصدار حزمة SDK التي تستخدمها إحدى نُسخ التطبيق، ستظهر لك بيانات الأداء من جميع المستخدمين.
مع ذلك، إذا كنت تعرض بيانات حديثة (منذ أقل من 36 ساعة تقريبًا)، تكون البيانات المعروضة من مستخدمي مثيلات التطبيق التي تستخدم الوقت الفعلي الإصدار المتوافق مع حزمة SDK. مع ذلك، تتضمّن البيانات غير الحديثة بيانات الأداء. من جميع إصدارات تطبيقك
التواصل مع فريق دعم Firebase
إذا كنت التواصل مع فريق دعم Firebase تضمين رقم تعريف تطبيق Firebase دائمًا. ابحث عن رقم تعريف تطبيقك على Firebase في بطاقة تطبيقاتك ضمن settings إعدادات المشروع.