Для каждого из ваших приложений Crashlytics автоматически рассчитывает и отображает показатели отсутствия сбоев, в частности, процент пользователей без сбоев и процент сессий без сбоев . Эти показатели помогут вам быстро оценить стабильность вашего приложения.
Диаграммы с показателями отсутствия сбоев можно найти в верхней части панели мониторинга Crashlytics , и вы можете фильтровать эти диаграммы по различным параметрам, таким как временной диапазон, сборка и (для приложений Android) по треку в Google Play .
Обратите внимание, что показатели отсутствия сбоев рассчитываются только для критических событий (и необработанных исключений, которые в Unity и Flutter были зарегистрированы как критические).
Получайте метрики без сбоев.
Для большинства приложений метрики без сбоев рассчитываются автоматически при интеграции SDK Crashlytics в ваше приложение. Однако существуют определенные ситуации, когда Crashlytics не получает необходимые данные для расчета метрик без сбоев:
Сборки вашего приложения, использующие старую версию Crashlytics SDK (о минимальных поддерживаемых версиях см. ниже).
Сборки вашего приложения, в которых отключен автоматический сбор и отчетность данных Crashlytics (подробнее см. в разделе «Влияние настроек сбора данных на качество метрик» на этой странице).
Версии SDK, поддерживающие метрики без сбоев.
Для получения метрик без сбоев необходимо обновить приложение до версии Crashlytics SDK, которая их поддерживает. Ниже приведены минимальные поддерживаемые версии Crashlytics SDK, которые позволяют получать метрики без сбоев:
- Платформы Apple: v10.8.0+
- Android: v18.6.0+ ( BoM v32.6.0+)
- Flutter: v3.4.5+
- Unity: 11.7.0+
Вы должны автоматически получать метрики отсутствия сбоев для сборок вашего приложения, использующих обновленную версию SDK.
Какие показатели гарантируют отсутствие сбоев?
Показатели отсутствия сбоев включают количество пользователей и количество сессий без сбоев .
Показатели, обеспечивающие бесперебойную работу приложения, зависят от двух понятий: пользователей и сессий. Для получения таких показателей вам потребуется версия SDK Crashlytics , способная отправлять данные по обоим этим понятиям. Вот как Crashlytics различает пользователя и сессию:
Пользователь — это отдельная установка вашего приложения на устройство. Например, если у человека установлено ваше приложение на нескольких разных устройствах, то Crashlytics будет учитывать каждую установку как отдельного и уникального пользователя.
Сессия — это непрерывный период времени, в течение которого пользователь взаимодействует с приложением. Новая сессия начинается при «холодном» запуске приложения или при переводе приложения в активный режим после как минимум 30 минут работы в фоновом режиме.
Кроме того, показатели отсутствия сбоев рассчитываются только для критических событий (и необработанных исключений, которые в Unity и Flutter отображаются как критические).
Что такое показатель количества пользователей без сбоев?
Показатель количества пользователей без сбоев — это процент пользователей, которые взаимодействовали с вашим приложением в течение выбранного периода времени, но не столкнулись со сбоями. Этот показатель отражает опыт, который ваше приложение предоставляет отдельному пользователю. Он часто отслеживается как ключевой показатель состояния всего приложения, когда целью является улучшение общего пользовательского опыта.
Этот показатель может быть применим к следующим типам приложений:
Приложения с длительными и несложными сеансами, такие как приложения для потокового вещания по запросу, приложения для социальных сетей или казуальные игры, позволяют пользователю продолжить с того места, где он остановился. Поскольку пользователи обычно взаимодействуют с этими приложениями в течение длительных, часто многосессионных сеансов, приоритет отдается максимальному общему количеству пользователей без сбоев, а не обеспечению безупречной работы каждого отдельного сеанса.
Приложения с устоявшейся пользовательской базой, такие как хорошо зарекомендовавшие себя рабочие приложения или крупные онлайн-платформы, где привычка и потребность в этих платформах перевешивают неудобства, связанные с сбоем.
Что такое показатель количества сессий без сбоев?
Показатель количества сессий без сбоев — это процент сессий, которые произошли в течение выбранного периода времени и не закончились сбоем. Сессии без сбоев свидетельствуют об общей надежности приложения и повышают доверие пользователей. Отслеживание сессий без сбоев особенно важно на ранних этапах выпуска нового приложения, когда сбой во время первого взаимодействия пользователя может привести к немедленному разочарованию и даже к отказу от использования.
Этот показатель часто является предпочтительным для следующих типов приложений:
Приложения с короткими и интенсивными циклами использования , такие как игры в реальном времени или потоковые приложения, где сбой в критический момент может привести к катастрофическим последствиям для пользователя.
Приложения, имеющие серьезные последствия , такие как финансовые приложения или навигационные приложения, где акцент делается на конечном результате использования, могут столкнуться с серьезными проблемами, приводящими к потере доверия к приложению.
Расчет показателей безаварийной езды
Как рассчитывается количество пользователей, у которых не было сбоев?
Показатель "количество пользователей без сбоев" отражает процент пользователей, которые взаимодействовали с вашим приложением, но не столкнулись со сбоями за выбранный период времени.
Вот формула для расчета процента пользователей, у которых не было сбоев. Ее входные значения предоставляются SDK Crashlytics и основаны на временном периоде, который вы выбрали из выпадающего меню в правом верхнем углу панели управления Crashlytics .
CRASH_FREE_USERS_PERCENTAGE = 1 - ( CRASHED_USERS / ALL_USERS )
CRASHED_USERS представляет собой общее количество уникальных пользователей, у которых произошел сбой за выбранный период времени.
ALL_USERS отображает общее количество пользователей, которые взаимодействовали с вашим приложением за выбранный период времени.
Процент пользователей, у которых не было сбоев, представляет собой агрегированные данные за определенный период времени , а не среднее значение.
Например, представьте, что у вашего приложения три пользователя; назовем их Пользователь A, Пользователь B и Пользователь C. В следующей таблице показано, какие пользователи взаимодействовали с вашим приложением каждый день и у каких из этих пользователей в тот или иной день произошел сбой:
| Понедельник | Вторник | Среда | |
|---|---|---|---|
| Пользователи, которые взаимодействовали с вашим приложением | А, В, С | А, В, С | А, В |
| Пользователь, у которого произошёл сбой | С | Б | А |
В среду процент пользователей, у которых не было сбоев, составил 50% (1 из 2 пользователей не испытывал сбоев).
В среду двое ваших пользователей взаимодействовали с вашим приложением, но только у одного из них (пользователя B) не было сбоев.За последние 2 дня процент пользователей, у которых не было сбоев, составил 33,3% (1 из 3 пользователей не испытывал сбоев).
За последние два дня приложением пользовались три ваших пользователя, но только у одного из них (пользователя C) не было сбоев.За последние 3 дня процент пользователей, у которых не было сбоев, составляет 0% (0 из 3 пользователей не имели сбоев).
За последние три дня приложением пользовались три ваших пользователя, но ни у одного из них не было сбоев.
Ценность пользователей, у которых не было сбоев, не следует сравнивать за разные периоды времени. Вероятность того, что у отдельного пользователя произойдет сбой, возрастает с увеличением количества использований приложения, поэтому ценность пользователей, у которых не было сбоев, скорее всего, будет ниже за более длительные периоды времени.
Как рассчитывается количество сеансов без сбоев?
Значение «количество сессий без сбоев» отражает процент сессий, которые произошли в вашем приложении, но не сопровождались сбоями за выбранный период времени.
Вот формула для расчета процента сессий без сбоев. Ее входные значения предоставляются SDK Crashlytics и основаны на временном периоде, который вы выбрали из выпадающего меню в правом верхнем углу панели управления Crashlytics .
CRASH_FREE_SESSIONS_PERCENTAGE = 1 - ( CRASHED_SESSIONS / ALL_SESSIONS )
CRASHED_SESSIONS отображает количество сессий, завершившихся сбоем за выбранный период времени.
ALL_SESSIONS отображает общее количество сессий, произошедших в вашем приложении за выбранный период времени.
Процент сеансов без сбоев представляет собой совокупность данных за определенный период времени , а не среднее значение.
Влияние настроек сбора данных на качество метрик
В зависимости от настроек сбора данных, показатели безотказной работы системы могут показывать низкие или нулевые значения. Вот два распространенных сценария, которые могут привести к ненадежным показателям безотказной работы системы:
Если вы включите сбор данных о сбоях, отключив автоматическую отправку отчетов, информация о сбоях будет отправляться в Crashlytics только от пользователей, которые явно дали согласие на сбор данных. Таким образом, точность метрик без сбоев пострадает, поскольку Crashlytics будет располагать информацией о сбоях только от этих пользователей, давших согласие (а не от всех ваших пользователей). Это означает, что ваши метрики без сбоев могут быть менее надежными и менее точно отражать общую стабильность вашего приложения.
Если у вас отключен автоматический сбор данных, вы можете использовать
sendUnsentReportsдля отправки кэшированных отчетов с устройства в Crashlytics . Использование этого метода отправит в Crashlytics данные о сбоях , но не данные о сессиях , из-за чего на графиках консоли будут отображаться низкие или нулевые значения метрик без сбоев.