بالنسبة إلى كل تطبيق من تطبيقاتك، تحسب Crashlytics تلقائيًا مقاييس خالية من الأعطال وتعرضها، وتحديدًا النسبة المئوية للمستخدِمين الذين لم يواجهوا أي تعطُّل والنسبة المئوية للجلسات الخالية من الأعطال. يمكن أن تساعدك هذه المقاييس في فهم استقرار تطبيقك بسرعة.
يمكنك العثور على رسوم بيانية لهذه المقاييس الخالية من الأعطال في أعلى لوحة بيانات Crashlytics، ويمكنك فلترة هذه الرسوم البيانية حسب مجموعة متنوّعة من السمات، مثل النطاق الزمني والإصدار و (بالنسبة إلى تطبيقات Android) حسب Google Play المسار.
يُرجى العِلم أنّ المقاييس الخالية من الأعطال لا يتم احتسابها إلا للأحداث الخطيرة (والاستثناءات التي لم يتم رصدها والتي تم الإبلاغ عنها على أنّها خطيرة في Unity وFlutter).
الحصول على مقاييس خالية من الأعطال
بالنسبة إلى معظم التطبيقات، يتم احتساب المقاييس الخالية من الأعطال تلقائيًا عند دمج حزمة Crashlytics SDK في تطبيقك. ومع ذلك، هناك حالات معيّنة لا تتلقّى فيها Crashlytics البيانات اللازمة لاحتساب المقاييس الخالية من الأعطال:
إصدارات تطبيقك التي تستخدم إصدارًا قديمًا من حزمة Crashlytics SDK (تعرَّف على الحد الأدنى من الإصدارات المتوافقة أدناه)
إصدارات حزمة SDK التي تتيح المقاييس الخالية من الأعطال
للحصول على مقاييس خالية من الأعطال، عليك تحديث تطبيقك لاستخدام إصدار من حزمة Crashlytics SDK يتيح هذه المقاييس. في ما يلي الحد الأدنى من الإصدارات المتوافقة من حزمة Crashlytics SDK التي يمكنها توفير المقاييس الخالية من الأعطال:
- منصّات Apple: الإصدار 10.8.0 أو إصدار أحدث
- Android: الإصدار 18.6.0 أو إصدار أحدث (BoM 32.6.0 أو إصدار أحدث)
- Flutter: الإصدار 3.4.5 أو إصدار أحدث
- Unity: الإصدار 11.7.0 أو إصدار أحدث
من المفترض أن تحصل تلقائيًا على مقاييس خالية من الأعطال لإصدارات تطبيقك التي تستخدم إصدارًا محدَّثًا من حزمة SDK.
ما هي المقاييس الخالية من الأعطال؟
تشمل المقاييس الخالية من الأعطال المستخدِمين الذين لم يواجهوا أي تعطُّل و الجلسات الخالية من الأعطال.
تستند المقاييس الخالية من الأعطال إلى مفهومَين: المستخدِمون والجلسات. للحصول على مقاييس خالية من الأعطال لتطبيقك، عليك استخدام إصدار من حزمة Crashlytics SDK يمكنه إرسال بيانات حول هذَين المفهومَين. في ما يلي كيفية تمييز Crashlytics بين المستخدِم والجلسة:
المستخدِم هو عملية تثبيت فردية لتطبيقك على جهاز. على سبيل المثال، إذا كان لدى شخص تطبيقك مثبّت على عدة أجهزة مختلفة، ستحسب Crashlytics كل عملية تثبيت على أنّها مستخدِم مختلف وفريد.
الجلسة هي فترة زمنية متواصلة يتفاعل خلالها المستخدِم مع تطبيق. تبدأ جلسة جديدة عند بدء تشغيل التطبيق للمرة الأولى أو عند ظهوره في المقدّمة بعد 30 دقيقة على الأقل من وضعه في الخلفية.
يُرجى العِلم أنّ المقاييس الخالية من الأعطال لا يتم احتسابها إلا للأحداث الخطيرة (والاستثناءات التي لم يتم رصدها والتي تم الإبلاغ عنها على أنّها خطيرة في Unity وFlutter).
ما هو مقياس المستخدِمين الذين لم يواجهوا أي تعطُّل؟
مقياس المستخدِمين الذين لم يواجهوا أي تعطُّل هو النسبة المئوية للمستخدِمين الذين تفاعلوا مع تطبيقك خلال فترة زمنية محدّدة ولكن لم يواجهوا أي تعطُّل. يعكس هذا المقياس التجربة التي يقدّمها تطبيقك لمستخدِم واحد. ويتم تتبُّعه بشكل متكرّر كمقياس رئيسي لصحة التطبيق بأكمله، عندما يكون الهدف هو تجربة المستخدِم الشاملة.
قد يكون هذا المقياس مناسبًا بشكل خاص لأنواع التطبيقات التالية:
التطبيقات التي تتضمّن جلسات طويلة وعادية ، مثل تطبيقات البث حسب الطلب أو تطبيقات وسائل التواصل الاجتماعي أو الألعاب البسيطة، حيث يمكن للمستخدِم مواصلة اللعب من حيث توقف. بما أنّ المستخدِمين يتفاعلون عادةً مع هذه التطبيقات في تجارب أطول، غالبًا ما تتضمّن عدة جلسات، فإنّ زيادة إجمالي عدد المستخدِمين الذين لم يواجهوا أي تعطُّل لها الأولوية على ضمان عدم حدوث أي تعطُّل في كل جلسة فردية.
التطبيقات التي تتضمّن قواعد مستخدِمين راسخة ، مثل تطبيقات العمل الراسخة أو المنصّات الكبيرة على الإنترنت، حيث تفوق العادة والحاجة إلى هذه المنصّات الإزعاج الناتج عن حدوث تعطُّل.
ما هو مقياس الجلسات الخالية من الأعطال؟
مقياس الجلسات الخالية من الأعطال هو النسبة المئوية للجلسات التي حدثت خلال فترة زمنية محدّدة ولم تنتهِ بحدوث تعطُّل. تشير الجلسات التي لا تتضمّن أعطالاً إلى الموثوقية العامة للتطبيق وتعزّز ثقة المستخدِم. من المهم بشكل خاص تتبُّع الجلسات الخالية من الأعطال في المراحل الأولى من إصدار جديد، حيث يمكن أن يؤدي حدوث تعطُّل أثناء التفاعل الأول للمستخدِم إلى إحباط فوري لدرجة التخلي عن التطبيق.
غالبًا ما يكون هذا المقياس هو المقياس المفضّل لأنواع التطبيقات التالية:
التطبيقات التي تتضمّن أنماط استخدام قصيرة ومكثّفة ، مثل الألعاب في الوقت الفعلي أو تطبيقات البث الحساسة للوقت، حيث يمكن أن يؤدي حدوث تعطُّل في منتصف لحظة مهمة إلى إحباط المستخدِم.
التطبيقات التي لها عواقب كبيرة ، مثل التطبيقات المالية أو تطبيقات التنقّل، حيث يتم التركيز على الحالة النهائية للتجربة. يمكن أن يؤدي حدوث تعطُّل في أحد هذه التطبيقات إلى مشاكل كبيرة، ما يؤدي إلى فقدان الثقة في التطبيق.
احتساب المقاييس الخالية من الأعطال
كيف يتم احتساب المستخدِمين الذين لم يواجهوا أي تعطُّل؟
تمثّل قيمة "المستخدِمين الذين لم يواجهوا أي تعطُّل" النسبة المئوية للمستخدِمين الذين تفاعلوا مع تطبيقك ولكن لم يواجهوا أي تعطُّل خلال فترة زمنية محدّدة.
في ما يلي صيغة احتساب النسبة المئوية للمستخدِمين الذين لم يواجهوا أي تعطُّل. توفّر حزمة Crashlytics SDK قيم الإدخال، وتستند إلى الفترة الزمنية التي اخترتها من القائمة المنسدلة في أعلى يسار لوحة بيانات Crashlytics.
CRASH_FREE_USERS_PERCENTAGE = 1 - (CRASHED_USERS / ALL_USERS)
يمثّل CRASHED_USERS إجمالي عدد المستخدِمين الفريدين الذين واجهوا تعطّلاً خلال الفترة الزمنية المحدّدة.
يمثّل ALL_USERS إجمالي عدد المستخدِمين الذين تفاعلوا مع تطبيقك خلال الفترة الزمنية المحدّدة.
النسبة المئوية للمستخدِمين الذين لم يواجهوا أي تعطُّل هي تجميع بمرور الوقت، وليس متوسطًا.
يجب عدم مقارنة قيمة "المستخدِمين الذين لم يواجهوا أي تعطُّل" خلال فترات زمنية مختلفة. يزداد احتمال حدوث تعطُّل لمستخدِم واحد كلما زاد عدد مرات استخدامه لتطبيقك، لذا من المرجّح أن تكون قيمة "المستخدِمين الذين لم يواجهوا أي تعطُّل" أصغر للفترات الزمنية الأطول.
كيف يتم احتساب الجلسات الخالية من الأعطال؟
تمثّل قيمة "الجلسات الخالية من الأعطال" النسبة المئوية للجلسات التي حدثت في تطبيقك ولكن لم تنتهِ بحدوث تعطُّل خلال فترة زمنية محدّدة.
في ما يلي صيغة احتساب النسبة المئوية للجلسات الخالية من الأعطال. توفّر حزمة Crashlytics SDK قيم الإدخال، وتستند إلى الفترة الزمنية التي اخترتها من القائمة المنسدلة في أعلى يسار لوحة بيانات Crashlytics.
CRASH_FREE_SESSIONS_PERCENTAGE = 1 - (CRASHED_SESSIONS / ALL_SESSIONS)
يمثّل CRASHED_SESSIONS عدد الجلسات التي انتهت بحدوث تعطُّل خلال الفترة الزمنية المحدّدة.
ALL_SESSIONS يمثّل إجمالي عدد الجلسات التي حدثت في تطبيقك خلال الفترة الزمنية المحدّدة.
النسبة المئوية للجلسات الخالية من الأعطال هي تجميع بمرور الوقت، وليس متوسطًا.
تأثير إعدادات جمع البيانات على جودة المقاييس
اعتمادًا على إعدادات جمع البيانات، قد تعرض المقاييس الخالية من الأعطال قيمًا منخفضة أو صفرًا. في ما يلي سيناريوهان شائعان يمكن أن يؤديا إلى مقاييس غير موثوقة خالية من الأعطال:
إذا فعّلت إعداد التقارير الاختياري من خلال إيقاف إعداد التقارير التلقائي عن الأعطال، لا يمكن إرسال معلومات الأعطال إلى Crashlytics إلا من المستخدِمين الذين وافقوا صراحةً على جمع البيانات. وبالتالي، ستتأثر دقة المقاييس الخالية من الأعطال لأنّ Crashlytics لا تتلقّى معلومات الأعطال إلا من هؤلاء المستخدِمين الذين وافقوا على جمع البيانات (بدلاً من جميع المستخدِمين). يعني ذلك أنّ المقاييس الخالية من الأعطال قد تكون أقل موثوقية وأقل تعبيرًا عن الاستقرار العام لتطبيقك.
إذا أوقفت جمع البيانات تلقائيًا، يمكنك استخدام
sendUnsentReportsلإرسال التقارير المخزّنة مؤقتًا على الجهاز فقط إلى Crashlytics. سيؤدي استخدام هذه الطريقة إلى إرسال بيانات الأعطال إلى Crashlytics، ولكن ليس بيانات الجلسات، ما يؤدي إلى عرض الرسوم البيانية في وحدة التحكّم قيمًا منخفضة أو صفرًا للمقاييس الخالية من الأعطال.