توفر هذه الصفحة تلميحات حول استكشاف الأخطاء وإصلاحها للبدء في مراقبة الأداء أو استخدام ميزات وأدوات مراقبة الأداء.
يتحقق أولاً من استكشاف الأخطاء وإصلاحها
يعد الفحصان التاليان من أفضل الممارسات العامة الموصى بها لأي شخص قبل إجراء المزيد من عمليات استكشاف الأخطاء وإصلاحها.
1. تحقق من رسائل السجل لأحداث الأداء
تحقق من رسائل السجل للتأكد من أن SDK لمراقبة الأداء يلتقط أحداث الأداء.
قم بتمكين تسجيل تصحيح الأخطاء لمراقبة الأداء في وقت الإنشاء عن طريق إضافة عنصر
<meta-data>
إلى ملفAndroidManifest.xml
الخاص بتطبيقك ، مثل:<application> <meta-data android:name="firebase_performance_logcat_enabled" android:value="true" /> </application>
تحقق من رسائل السجل الخاصة بك بحثًا عن أي رسائل خطأ.
تعمل مراقبة الأداء على وضع علامة
FirebasePerformance
على رسائل السجل الخاصة بها. باستخدام تصفية logcat ، يمكنك على وجه التحديد عرض تتبع المدة وتسجيل طلب شبكة HTTP / S عن طريق تشغيل الأمر التالي:adb logcat -s FirebasePerformance
تحقق من الأنواع التالية من السجلات التي تشير إلى أن مراقبة الأداء تسجل أحداث الأداء:
-
Logging trace metric: TRACE_NAME , FIREBASE_PERFORMANCE_CONSOLE_URL
-
Logging network request trace: URL
-
انقر فوق عنوان URL لعرض بياناتك في وحدة تحكم Firebase. قد يستغرق تحديث البيانات في لوحة المعلومات بضع لحظات.
إذا كان تطبيقك لا يسجل أحداث الأداء ، فراجع نصائح استكشاف الأخطاء وإصلاحها .
2. تحقق من لوحة معلومات حالة Firebase
تحقق من Firebase Status Dashboard في حالة وجود انقطاع معروف لـ Firebase أو لمراقبة الأداء.
الشروع في مراقبة الأداء
إذا كنت تبدأ في مراقبة الأداء ( iOS + | Android | Web ) ، يمكن أن تساعدك نصائح استكشاف الأخطاء وإصلاحها التالية في حل المشكلات التي تتضمن اكتشاف Firebase لـ SDK أو عرض بيانات الأداء الأولى في وحدة تحكم Firebase.
يمكن أن يكتشف Firebase ما إذا كنت قد أضفت بنجاح SDK لمراقبة الأداء إلى تطبيقك عندما يتلقى معلومات عن الحدث (مثل تفاعلات التطبيق) من تطبيقك. عادةً في غضون 10 دقائق من بدء تشغيل تطبيقك ، تعرض لوحة معلومات الأداء الخاصة بوحدة تحكم Firebase رسالة "تم اكتشاف SDK". بعد ذلك ، في غضون 30 دقيقة ، تعرض لوحة المعلومات البيانات الأولية التي تمت معالجتها.
إذا مرت أكثر من 10 دقائق منذ أن أضفت أحدث إصدار من SDK إلى تطبيقك ، وما زلت لا ترى أي تغيير ، فتحقق من رسائل السجل للتأكد من أن مراقبة الأداء تسجل الأحداث. جرب خطوات استكشاف الأخطاء وإصلاحها المناسبة كما هو موضح أدناه لاستكشاف رسالة اكتشاف SDK المتأخرة وإصلاحها.
تأكد من أنك تستخدم نظام مراقبة الأداء Android SDK 19.1.0 أو أحدث (أو Firebase BoM 26.3.0 أو أحدث) ، راجع ملاحظة الإصدار .
إذا كنت لا تزال تقوم بالتطوير محليًا ، فحاول إنشاء المزيد من الأحداث لجمع البيانات:
- أنشئ الأحداث من خلال تبديل التطبيق الخاص بك بين الخلفية والمقدمة عدة مرات ، والتفاعل مع تطبيقك من خلال التنقل عبر الشاشات ، و / أو تشغيل طلبات الشبكة.
تأكد من إضافة ملف تهيئة Firebase (
google-services.json
) بشكل صحيح إلى تطبيقك وأنك لم تقم بتعديل الملف. على وجه التحديد ، تحقق مما يلي:لم يتم إلحاق اسم ملف التكوين بأحرف إضافية ، مثل
(2)
.ملف التكوين موجود في دليل الوحدة النمطية (مستوى التطبيق) لتطبيقك.
معرف تطبيق Firebase Android (
mobilesdk_app_id
) المدرج في ملف التكوين صحيح لتطبيقك. ابحث عن معرّف تطبيق Firebase في بطاقة تطبيقاتك من لإعدادات المشروع .
إذا بدا أي خطأ في ملف التكوين في تطبيقك ، فجرّب ما يلي:
احذف ملف التكوين الموجود لديك حاليًا في تطبيقك.
اتبع هذه التعليمات لتنزيل ملف تكوين جديد وإضافته إلى تطبيق Android الخاص بك.
إذا كانت SDK تسجل الأحداث ويبدو أن كل شيء قد تم إعداده بشكل صحيح ، ولكنك ما زلت لا ترى رسالة اكتشاف SDK أو البيانات التي تمت معالجتها (بعد 10 دقائق) ، فاتصل بدعم Firebase .
تحقق من إعداد المكون الإضافي لمراقبة الأداء Gradle ، على النحو التالي:
تأكد من إضافة المكون الإضافي بشكل صحيح. على وجه التحديد ، تحقق مما يلي:
- لقد أضفت المكوّن الإضافي (
) في ملف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 لمراقبة الأداء من خلال أي من العلامات التالية في ملف
AndroidManifest.xml
الخاص بك:-
firebase_performance_collection_enabled
-
firebase_performance_collection_deactivated
-
تأكد من عدم تعطيل مراقبة الأداء في وقت التشغيل .
إذا لم تتمكن من العثور على أي شيء تم تعطيله في تطبيقك ، فاتصل بدعم Firebase .
تعالج مراقبة الأداء بيانات حدث الأداء قبل عرضها في لوحة معلومات الأداء .
إذا مر أكثر من 24 ساعة منذ ظهور رسالة "تم اكتشاف SDK" ، وما زلت لا ترى البيانات ، فتحقق من لوحة بيانات حالة Firebase في حالة وجود انقطاع معروف. إذا لم يكن هناك انقطاع ، فاتصل بدعم Firebase .
استكشاف الأخطاء وإصلاحها بشكل عام
إذا كنت قد أضفت SDK بنجاح وكنت تستخدم مراقبة الأداء في تطبيقك ، فيمكن أن تساعد نصائح استكشاف الأخطاء وإصلاحها التالية في حل المشكلات العامة التي تتضمن ميزات وأدوات مراقبة الأداء.
إذا كنت لا ترى رسائل سجل لأحداث الأداء ، فجرّب الخطوات التالية لتحري الخلل وإصلاحه:
تحقق من إعداد المكون الإضافي لمراقبة الأداء Gradle ، على النحو التالي:
تأكد من إضافة المكون الإضافي بشكل صحيح. على وجه التحديد ، تحقق مما يلي:
- لقد أضفت المكوّن الإضافي (
) في ملف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 لمراقبة الأداء من خلال أي من العلامات التالية في ملف
AndroidManifest.xml
الخاص بك:-
firebase_performance_collection_enabled
-
firebase_performance_collection_deactivated
-
تأكد من عدم تعطيل مراقبة الأداء في وقت التشغيل .
إذا لم تتمكن من العثور على أي شيء تم تعطيله في تطبيقك ، فاتصل بدعم Firebase .
إذا كنت تفقد بيانات لتتبع عرض الشاشة ، فجرّب خطوات استكشاف الأخطاء وإصلاحها التالية:
تأكد من أنك تستخدم أحدث إصدار من Android SDK (v20.3.1). لا تتوفر تتبعات عرض الشاشة إلا مع الإصدار 15.2.0 أو إصدار أحدث.
تأكد من أنك لم تقم بتعطيل تسريع الأجهزة يدويًا لشاشة.
تأكد من أنك لا تستخدم DexGuard أو Jack. مراقبة الأداء غير متوافقة مع سلاسل الأدوات هذه.
يقوم DexGuard بتعطيل التجميع التلقائي لبدء التطبيق ، والتطبيق في المقدمة ، وآثار التطبيق في الخلفية. ومع ذلك ، يجب أن تتصرف أي آثار رمز مخصص بشكل طبيعي إذا كان تطبيقك يستخدم DexGuard.
تم إيقاف Jack ولا يجب استخدامه بشكل عام في تطبيقك.
هل ترى بيانات أداء لعمليات التتبع التي تم جمعها تلقائيًا ولكن ليس لتتبع التعليمات البرمجية المخصصة ؟ جرب خطوات استكشاف الأخطاء وإصلاحها التالية:
إذا قمت بتجهيز تتبعات التعليمات البرمجية المخصصة عبر واجهة برمجة تطبيقات التتبع ، فتحقق من إعداد التتبع ، وخاصة ما يلي:
- يجب أن تفي أسماء عمليات تتبع التعليمات البرمجية المخصصة والمقاييس المخصصة بالمتطلبات التالية: عدم وجود مسافة بيضاء سابقة أو لاحقة ، وعدم وجود حرف شرطة سفلية بادئة (
_
) ، والحد الأقصى للطول هو 32 حرفًا. - يجب بدء جميع الآثار وإيقافها. لن يتم تسجيل أي تتبع لم يتم بدء تشغيله أو إيقافه أو إيقافه قبل البدء.
- يجب أن تفي أسماء عمليات تتبع التعليمات البرمجية المخصصة والمقاييس المخصصة بالمتطلبات التالية: عدم وجود مسافة بيضاء سابقة أو لاحقة ، وعدم وجود حرف شرطة سفلية بادئة (
إذا قمت بتجهيز تتبعات التعليمات البرمجية المخصصة عبر تدوين
@AddTrace
، فتحقق من إعداد المكون الإضافي لمراقبة الأداء Gradle:تأكد من إضافة المكون الإضافي بشكل صحيح. على وجه التحديد ، تحقق مما يلي:
- لقد أضفت المكوّن الإضافي (
) في ملف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
الخاص بك
-
تحقق من رسائل السجل الخاصة بك للتأكد من أن "مراقبة الأداء" تقوم بتسجيل آثار التعليمات البرمجية المخصصة المتوقعة.
إذا كانت مراقبة الأداء تقوم بتسجيل الأحداث ، ولكن لا يتم عرض أي بيانات بعد 24 ساعة ، فاتصل بدعم Firebase .
إذا كنت تفتقد بيانات طلب الشبكة ، فجرّب خطوات استكشاف الأخطاء وإصلاحها التالية:
بالنسبة لتطبيقات Android ، يتيح المكون الإضافي لمراقبة الأداء 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
الخاص بك
-
تحقق من عدم توافق مكتبة الشبكة. تجمع مراقبة الأداء تلقائيًا قياسات لطلبات الشبكة التي تستخدم مكتبات الشبكات التالية: OkHttp 3.xx و Java URLConnection و Apache HttpClient.
لاحظ أنه يمكنك إضافة مراقبة مخصصة لطلبات الشبكة .
كن على علم بما يلي:
اعتمادًا على سلوك التعليمات البرمجية ومكتبات الشبكات المستخدمة بواسطة التعليمات البرمجية الخاصة بك ، قد تقوم "مراقبة الأداء" بالإبلاغ عن طلبات الشبكة المكتملة فقط. هذا يعني أنه قد لا يتم الإبلاغ عن اتصالات HTTP / S التي تُركت مفتوحة.
لا تتوافق مراقبة الأداء مع DexGuard و Jack.
- يقوم DexGuard بتعطيل مراقبة طلبات شبكة HTTP / S.
- تم إيقاف Jack ولا يجب استخدامه بشكل عام في تطبيقك.
لا تقوم مراقبة الأداء بالإبلاغ عن طلبات الشبكة ذات رؤوس
Content-Type
غير الصالحة. ومع ذلك ، سيستمر قبول طلبات الشبكة بدون رؤوسContent-Type
.
تعرف على المزيد حول كيفية قيام "مراقبة الأداء" بتجميع بيانات طلب الشبكة ضمن أنماط عنوان URL.
يمكنك أيضًا تجربة أنماط URL المخصصة !
التعليمات
لقد استبدلنا "أهم المشكلات " بالتنبيهات الأخيرة كمتابعة لإدخالنا الأخير للتنبيهات ، والذي يُعلمك تلقائيًا عند تجاوز الحدود التي قمت بتعيينها. يتم الآن إيقاف المشكلات واستبدالها بالتنبيهات.
يقوم محدد التطبيقات الموجود أعلى بطاقة الأداء بتصفية إدخالات التنبيه ضمن التنبيهات الأخيرة . يتم عرض أحدث ثلاثة تنبيهات فقط للتطبيق (التطبيقات) المحددة.
لمعرفة المزيد حول التنبيهات ، راجع إعداد التنبيهات لمشاكل الأداء .
تدعم مراقبة الأداء تنبيهات المقاييس التي تتجاوز الحدود المحددة. لتجنب الالتباس مع هذه الحدود القابلة للتكوين لمقاييس الأداء ، أزلنا القدرة على تكوين عتبات المشكلات .
لقد استبدلنا صفحات التفاصيل والمقاييس بواجهة مستخدم مركزية (UI) أعيد تصميمها حديثًا لتحسين كيفية استكشاف المشكلات وإصلاحها. توفر واجهة المستخدم الجديدة لاستكشاف الأخطاء وإصلاحها نفس الوظيفة الأساسية التي قدمتها التفاصيل والمقاييس. لمعرفة المزيد حول استكشاف الأخطاء وإصلاحها ، راجع عرض المزيد من البيانات لتتبع محدد .
تجمع مراقبة الأداء بيانات الأداء من أجهزة مستخدم التطبيق الخاص بك. إذا كان للتطبيق الخاص بك العديد من المستخدمين أو إذا كان التطبيق ينشئ قدرًا كبيرًا من نشاط الأداء ، فقد تقصر مراقبة الأداء جمع البيانات على مجموعة فرعية من الأجهزة لتقليل عدد الأحداث التي تمت معالجتها. هذه الحدود مرتفعة بما يكفي بحيث تظل قيم المقاييس تمثل تجربة تطبيق المستخدم حتى مع وجود عدد أقل من الأحداث.
لإدارة حجم البيانات التي نجمعها ، تستخدم مراقبة الأداء خيارات أخذ العينات التالية:
الحد من المعدل على الجهاز : لمنع الجهاز من إرسال دفعات مفاجئة من التتبع ، نقوم بتحديد عدد الرموز وتتبعات طلبات الشبكة المرسلة من الجهاز إلى 300 حدث كل 10 دقائق. يحمي هذا الأسلوب الجهاز من الأجهزة الحلقية التي يمكنها إرسال كميات كبيرة من بيانات الأداء ، كما يمنع جهازًا واحدًا من تحريف قياسات الأداء.
أخذ العينات الديناميكي : تجمع مراقبة الأداء ما يقرب من 100 مليون حدث لتتبع الرموز و 100 مليون لتتبع طلبات الشبكة لكل تطبيق عبر جميع مستخدمي التطبيق. يتم جلب معدل أخذ العينات الديناميكي على الأجهزة (باستخدام Firebase Remote Config) لتحديد ما إذا كان يجب على جهاز عشوائي التقاط الآثار وإرسالها. الجهاز الذي لم يتم اختياره لأخذ العينات لا يرسل أي أحداث. معدل أخذ العينات الديناميكي خاص بالتطبيق ويتم تعديله لضمان بقاء الحجم الإجمالي للبيانات المجمعة أقل من الحد.
ترسل جلسات المستخدم بيانات إضافية ومفصلة من جهاز المستخدم ، مما يتطلب المزيد من الموارد لالتقاط البيانات وإرسالها. لتقليل تأثير جلسات المستخدم ، قد تقيد مراقبة الأداء أيضًا عدد الجلسات.
تقييد معدل جانب الخادم : لضمان عدم تجاوز التطبيقات لحد أخذ العينات ، قد تستخدم مراقبة الأداء أخذ العينات من جانب الخادم لإسقاط بعض الأحداث المستلمة من الأجهزة. على الرغم من أن هذا النوع من التقييد لا يغير فعالية المقاييس الخاصة بنا ، إلا أنه قد يتسبب في حدوث تغييرات طفيفة في النمط ، بما في ذلك ما يلي:
- يمكن أن يختلف عدد الآثار عن عدد المرات التي تم فيها تنفيذ جزء من التعليمات البرمجية.
- قد تحتوي الآثار التي تقترن بشكل وثيق في التعليمات البرمجية على عدد مختلف من العينات.
لقد استبدلنا علامة التبويب "المشكلات" بإدخال التنبيهات ، والتي تُعلمك تلقائيًا عند تجاوز الحدود التي قمت بتعيينها. لم تعد بحاجة إلى التحقق يدويًا من وحدة تحكم Firebase لتحديد حالة العتبة. للتعرف على التنبيهات ، راجع إعداد التنبيهات لمشاكل الأداء .
لقد أعدنا تصميم قسم مراقبة الأداء في وحدة تحكم Firebase بحيث تعرض علامة التبويب Dashboard مقاييسك الرئيسية وجميع آثارك في مساحة واحدة. كجزء من إعادة التصميم ، أزلنا صفحات الجهاز والشبكة .
يحتوي جدول التتبع الموجود أسفل علامة تبويب لوحة المعلومات على نفس المعلومات التي تعرضها علامتا التبويب على الجهاز والشبكة ، ولكن مع بعض الميزات المضافة ، بما في ذلك القدرة على فرز تتبعاتك حسب النسبة المئوية للتغيير لمقياس معين. لعرض جميع المقاييس والبيانات لتتبع معين ، انقر فوق اسم التتبع في جدول التتبع.
اعرض آثارك في علامات التبويب الفرعية التالية لجدول التتبع:
- تتبع طلبات الشبكة (سواء الجاهزة أو المخصصة) - علامة التبويب الفرعية لطلبات الشبكة
- تتبعات التعليمات البرمجية المخصصة - علامة التبويب الفرعية للتتبعات المخصصة
- بدء التطبيق ، التطبيق في المقدمة ، تتبعات التطبيق في الخلفية - علامة التبويب الفرعية للتتبعات المخصصة
- تتبعات عرض الشاشة - علامة التبويب الفرعية لعرض الشاشة
- تتبعات تحميل الصفحة - علامة التبويب الفرعية تحميل الصفحة
للحصول على تفاصيل حول جدول التتبع وعرض المقاييس والبيانات ، تفضل بزيارة صفحة نظرة عامة على وحدة التحكم ( iOS + | Android | Web ).
يتم حساب إطارات التقديم البطيئة والإطارات المجمدة بمعدل تحديث مفترض للجهاز يبلغ 60 هرتز. إذا كان معدل تحديث الجهاز أقل من 60 هرتز ، فسيكون لكل إطار وقت عرض أبطأ لأنه يتم عرض إطارات أقل في الثانية. يمكن أن تتسبب أوقات العرض البطيئة في الإبلاغ عن المزيد من الإطارات البطيئة أو المجمدة نظرًا لأنه سيتم عرض المزيد من الإطارات بشكل أبطأ أو سيتم تجميدها. ومع ذلك ، إذا كان معدل تحديث الجهاز أعلى من 60 هرتز ، فسيكون لكل إطار وقت عرض أسرع. يمكن أن يتسبب هذا في الإبلاغ عن عدد أقل من الإطارات البطيئة أو المجمدة. هذا هو القيد الحالي في مراقبة الأداء SDK.
للاطلاع على أداء الأجزاء بالإضافة إلى نشاط التطبيق ، تأكد من أن تطبيقك يستخدم مراقبة الأداء Android SDK الإصدار 20.1.0 أو إصدار أحدث. لمعرفة المزيد ، راجع إضافة مراقبة الأداء إلى التطبيق الخاص بك .
يعتمد كل تتبع للجزء والنشاط على اسم الفئة الخاص به كما هو محدد في التطبيق الخاص بك. تحتوي كل آثار الشاشة على البادئة st متبوعة باسم الفئة. في وحدة تحكم Firebase ، تتم إزالة البادئة. لمعرفة المزيد ، راجع التعرف على بيانات أداء عرض الشاشة (تطبيقات Apple و Android) .
تجري مراقبة الأداء أخذ عينات من الأحداث عبر جميع الأحداث التي تم جمعها على الجهاز. يتيح لنا هذا الأسلوب جمع الحد الأدنى من الأحداث المطلوبة من أجهزة المستخدم لتوفير مقاييس الأداء.
تتيح لك مراقبة الأداء إعداد تنبيهات للمقاييس التي تهتم بها. بالنسبة لتتبعات تجسيد الشاشة التي تم إنشاؤها ، يمكنك إعداد تنبيهات لإعلامك عندما تتجاوز نسبة الإطارات البطيئة والمجمدة حدًا قمت بتعيينه.
تستخدم مراقبة الأداء لنظام Android أدوات الرموز الثنائية لتوفير بعض الميزات الجاهزة مثل مراقبة طلبات شبكة HTTP / S. كجزء من التجميع ، تتطلب العملية التكرار من خلال جميع فئات تطبيقك (بما في ذلك التبعيات) لأداة الكود الذي يعد أمرًا بالغ الأهمية في قياس أداء طلب الشبكة لتطبيقك.
فيما يلي بعض المساهمين الرئيسيين في زيادة وقت الإنشاء:
- عدد الفصول أو الملفات
- حجم كل فئة من هذه الفئات (أسطر التعليمات البرمجية)
- تكوين جهازك
- البناء الأولي مقابل البناء اللاحق (عادةً ما تكون الإنشاءات اللاحقة أسرع من الإنشاء الأولي)
لتحسين وقت البناء الخاص بك ، ضع في اعتبارك تعديل التعليمات البرمجية الخاصة بك .
بدءًا من الإصدار 1.3.3 من المكون الإضافي لمراقبة الأداء ، ركزنا على إجراء تحسينات كبيرة في معالجة الإنشاء الإضافية والتخزين المؤقت لمدخلات المكتبة. لتلقي أحدث تحسينات وقت الإنشاء ، تأكد من استخدام أحدث إصدار من المكون الإضافي (v1.4.2) .
لاحظ أنه يمكنك تعطيل المكوّن الإضافي لمراقبة الأداء لإصدارات تصحيح الأخطاء محليًا إذا كنت تريد تجنب أوقات الإنشاء الطويلة. ومع ذلك ، لا يُنصح بهذا الأسلوب لإصدارات الإنتاج ، لأنه قد يؤدي إلى فقدان قياسات الأداء لطلبات الشبكة في تطبيقك.
تستخدم مراقبة الأداء لنظام Android أدوات الرموز الثنائية لتوفير بعض الميزات الجاهزة مثل مراقبة طلبات شبكة HTTP / S. كجزء من التجميع ، تتطلب العملية التكرار من خلال جميع فئات تطبيقك (بما في ذلك التبعيات) لأداة الكود الذي يعد أمرًا بالغ الأهمية في قياس أداء طلب الشبكة لتطبيقك.
إذا حصلت على أخطاء بناء مثل JSR/RET are not supported with computeFrames option
أو أخطاء مشابهة بعد الدمج مع المكون الإضافي لمراقبة الأداء ، فقد يكون هذا بسبب اعتمادك أيضًا على مكتبة غير متوافقة مع المكون الإضافي لمراقبة الأداء Gradle.
للتغلب على هذا ، يمكنك استبعاد الفئات / المكتبات غير المتوافقة من التجهيز باتباع الخطوات التالية:
- قم بالتحديث إلى أحدث إصدار من البرنامج الإضافي Performance Monitoring Gradle (الحد الأدنى v1.4.0 ).
- قم بتحديث إصدار البرنامج المساعد Android Gradle إلى الإصدار 7.2.0 أو إصدار أحدث.
- أضف العلامة التالية إلى ملف
build.gradle
للوحدة النمطية الخاصة بك (على مستوى التطبيق) لاستبعاد الفئات / المكتبات غير المتوافقة من التجهيز:android { // ... androidComponents { onVariants(selector().all(), { instrumentation.excludes.add("example.incompatible.library") }) } }
لمعرفة المزيد حول خاصيةexclude
الخاصة بواجهة برمجة تطبيقاتInstrumentation
الخاصة ببرنامج Android Gradle ، راجع Instrumentation .
يرجى تقديم مشكلة في Github عندما تواجه أخطاء في الإنشاء بسبب المكتبات غير المتوافقة بحيث يمكن أيضًا استبعادها من أن تكون أداة في المكون الإضافي لمراقبة الأداء.
إذا قمت بتمكين تكامل BigQuery لمراقبة أداء Firebase ، فسيتم تصدير بياناتك إلى BigQuery بعد 12 إلى 24 ساعة من نهاية اليوم (بتوقيت المحيط الهادئ).
على سبيل المثال ، ستتوفر بيانات 19 نيسان (أبريل) في BigQuery في 20 نيسان (أبريل) بين الساعة 12:00 ظهرًا ومنتصف الليل (جميع التواريخ والأوقات بتوقيت المحيط الهادئ).
Near real-time data processing and display
Firebase Performance Monitoring processes collected performance data as it comes in, which results in near real-time data display in the Firebase console. Processed data displays in the console within a few minutes of its collection, hence the term "near real-time".
To take advantage of near real-time data processing, make sure your app uses a real-time compatible SDK version .
To take advantage of near real-time data processing, you only need to make sure that your app uses a Performance Monitoring SDK version that's compatible with real-time data processing.
These are the real-time compatible SDK versions:
- iOS — v7.3.0 or later
- tvOS — v8.9.0 or later
- Android — v19.0.10 or later (or Firebase Android BoM v26.1.0 or later)
- Web — v7.14.0 or later
Note that we always recommend using the latest version of SDK, but any version listed above will enable Performance Monitoring to process your data in near real time.
These are the SDK versions compatible with real-time data processing:
- iOS — v7.3.0 or later
- tvOS — v8.9.0 or later
- Android — v19.0.10 or later (or Firebase Android BoM v26.1.0 or later)
- Web — v7.14.0 or later
Note that we always recommend using the latest version of SDK, but any version listed above will enable Performance Monitoring to process your data in near real time.
If your app doesn't use a real-time compatible SDK version, you will still see all your app's performance data in the Firebase console. However, the display of performance data will be delayed by roughly 36 hours from the time of its collection.
Yes! Regardless of which SDK version an app instance uses, you'll see performance data from all your users.
However, if you're looking at recent data (less than roughly 36 hours old), then the displayed data is from users of app instances using a real-time compatible SDK version. The non-recent data, though, includes performance data from all versions of your app.
Contacting Firebase Support
If you reach out to Firebase Support , always include your Firebase App ID. Find your Firebase App ID in the Your apps card of your Project settings .