Dane o braku awarii

W przypadku każdej z Twoich aplikacji Crashlytics automatycznie oblicza i wyświetla dane o bezawaryjnej pracy, w tym odsetek użytkowników, u których nie wystąpiła awaria, oraz odsetek sesji bez awarii. Te dane pomogą Ci szybko zrozumieć stabilność aplikacji.

Wykresy z tymi danymi znajdziesz u góry panelu Crashlytics. Możesz je filtrować za pomocą różnych wymiarów, np. zakresu czasowego, wersji i Google Playścieżki (w przypadku aplikacji na Androida).

Pamiętaj, że dane dotyczące braku awarii są obliczane tylko w przypadku zdarzeń krytycznych (i nieprzechwyconych wyjątków zgłoszonych jako krytyczne w przypadku Unity i Fluttera).

Pobieranie danych o bezawaryjnej pracy

W przypadku większości aplikacji dane dotyczące braku awarii są obliczane automatycznie po zintegrowaniu w aplikacji pakietu SDK Crashlytics. Są jednak sytuacje, w których Crashlytics nie otrzymuje danych niezbędnych do obliczenia tych danych:

  • kompilacje aplikacji, które korzystają ze starej wersji pakietu SDK Crashlytics (poniżej znajdziesz informacje o minimalnych obsługiwanych wersjach);

  • kompilacje aplikacji, które wyłączają automatyczne zbieranie danych Crashlytics i raportowanie (więcej informacji znajdziesz w sekcji „Wpływ ustawień zbierania danych na jakość danych statystycznych” na tej stronie);

Wersje pakietu SDK, które obsługują dane o brakujących awariach

Aby uzyskać dane bez błędów, musisz zaktualizować aplikację tak, aby używała wersji pakietu SDK Crashlytics, która je obsługuje. Oto minimalne obsługiwane wersje pakietu SDK Crashlytics, które mogą służyć do generowania danych o bezpiecznych treściach:

  • Platformy Apple: wersja 10.8.0 lub nowsza
  • Android: w wersji 18.6.0 lub nowszej (BoM w wersji 32.6.0 lub nowszej),
  • Flutter: wersja 3.4.5 lub nowsza
  • Unity: wersja 11.7.0 lub nowsza

Dane o liczbie sesji bez awarii powinny być automatycznie dostępne w przypadku wersji aplikacji, które korzystają z zaktualizowanej wersji pakietu SDK.

Co to są dane o bezawaryjnej pracy?

Dane o bezawaryjnej pracy obejmują liczbę użytkownikówliczbę sesji, podczas których nie wystąpiła awaria.

Dane o bezawaryjnej pracy zależą od 2 elementów: użytkowników i sesji. Aby uzyskać dane o bezwypadkowych pomiarach w swojej aplikacji, musisz użyć wersji pakietu SDK Crashlytics, która może wysyłać dane o obu tych koncepcjach. Oto jak Crashlyticsróżnicuje użytkownika od sesji:

  • Użytkownik to pojedyncza instalacja aplikacji na urządzeniu. Jeśli np. użytkownik ma Twoją aplikację zainstalowaną na kilku różnych urządzeniach, Crashlytics policzy każdą instalację jako innego, unikalnego użytkownika.

  • Sesja to ciągły okres czasu, w którym użytkownik korzysta z aplikacji. Nowa sesja rozpoczyna się, gdy aplikacja jest uruchamiana na zimno lub gdy zostaje przeniesiona na pierwszy plan po co najmniej 30 minutach działania w tle.

Dane dotyczące braku awarii są obliczane tylko w przypadku zdarzeń krytycznych (oraz niezarejestrowanych wyjątków zgłoszonych jako krytyczne w przypadku Unity i Fluttera).

Co oznaczają dane o użytkownikach, u których nie wystąpił błąd?

Dane Użytkownicy bez awarii to odsetek użytkowników, którzy weszli w interakcję z Twoją aplikacją w wybranym okresie, ale nie doświadczyli awarii. Ten rodzaj danych odzwierciedla wrażenia użytkownika po użyciu aplikacji. Jest on często śledzony jako kluczowy wskaźnik stanu całej aplikacji, gdy celem jest ogólna wygoda użytkowników.

Te dane mogą być szczególnie przydatne w przypadku tych typów aplikacji:

  • Aplikacje z długimi i przypadkowymi sesjami, takie jak aplikacje do strumieniowego przesyłania żądań, aplikacje społecznościowe czy gry casualowe, w których użytkownik może kontynuować od miejsca, w którym przerwał, ponieważ użytkownicy zwykle korzystają z tych aplikacji przez dłuższy czas, często w wielu sesjach, maksymalizacja łącznej liczby użytkowników bez awarii ma pierwszeństwo przed zapewnieniem, że każda sesja przebiega bez problemów.

  • Aplikacje z dużą liczbą użytkowników, takie jak dobrze znane aplikacje do pracy lub duże platformy internetowe, w przypadku których przyzwyczajenie i potrzeba korzystania z nich przeważają nad niedogodami związanymi z awarią.

Co to są sesje bez awarii?

Dane sesje bez awarii to odsetek sesji, które miały miejsce w wybranym okresie i nie zakończyły się awarią. Sesje bez awarii wskazują na ogólną niezawodność aplikacji i budują zaufanie użytkowników. Śledzenie sesji bez awarii jest szczególnie ważne we wczesnych etapach nowej wersji, gdy awaria podczas pierwszej interakcji z użytkownikiem może spowodować natychmiastowe zniechęcenie do korzystania z aplikacji.

Ten rodzaj danych jest często preferowany w przypadku tych typów aplikacji:

  • Aplikacje o krótkich i intensywnych wzorcach użytkowania, np. gry w czasie rzeczywistym lub aplikacje do strumieniowego przesyłania danych, w których przypadku awaria w krytycznym momencie może być dla użytkownika bardzo frustrująca.

  • Aplikacje o istotnych konsekwencjach, np. aplikacje finansowe lub nawigacyjne, w których przypadku nacisk kładzie się na końcowy stan. Awaria jednej z tych aplikacji może spowodować poważne problemy, w tym utratę zaufania do aplikacji.

Obliczanie danych o bezawaryjnej pracy

Jak obliczana jest liczba użytkowników, u których nie wystąpiła awaria?

Wartość „Użytkownicy bez awarii” to odsetek użytkowników, którzy weszli w interakcję z Twoją aplikacją, ale nie wystąpiła u nich awaria w wybranym okresie.

Oto wzór na obliczanie odsetka użytkowników, u których nie wystąpiła awaria. Wartości wejściowe są dostarczane przez pakiet SDK Crashlytics i są oparte na okresie wybranym w menu w prawym górnym rogu panelu Crashlytics.

CRASH_FREE_USERS_PERCENTAGE = 1 - (CRASHED_USERS / ALL_USERS)

  • CRASHED_USERS to łączna liczba unikalnych użytkowników, którzy doświadczyli awarii w wybranym okresie.

  • ALL_USERS to łączna liczba użytkowników, którzy w wybranym okresie mieli kontakt z Twoją aplikacją.

Odsetek użytkowników, u których nie wystąpiła awaria, to agregacja w czasie, a nie średnia.

Wartości współczynnika użytkowników, u których nie wystąpił błąd, nie należy porównywać w różnych okresach. Im częściej użytkownik korzysta z aplikacji, tym większe jest prawdopodobieństwo, że wystąpi u niego awaria, dlatego wartość użytkowników, u których nie wystąpiła awaria, jest prawdopodobnie mniejsza w dłuższych okresach.

Jak oblicza się sesje bez awarii?

Wartość Sesje bez awarii to odsetek sesji, które miały miejsce w aplikacji, ale w wybranym okresie nie wystąpiła w nich awaria.

Oto formuła obliczania odsetka sesji bez awarii. Wartości wejściowe są dostarczane przez pakiet SDK Crashlytics i są oparte na okresie wybranym w menu w prawym górnym rogu panelu Crashlytics.

CRASH_FREE_SESSIONS_PERCENTAGE = 1 - (CRASHED_SESSIONS / ALL_SESSIONS)

  • CRASHED_SESSIONS to liczba sesji, które zakończyły się awarią w wybranym okresie.

  • Wartość ALL_SESSIONS to łączna liczba sesji w Twojej aplikacji w wybranym okresie.

Odsetek sesji bez awarii to suma danych z czasu, a nie średnia.

Wpływ ustawień zbierania danych na jakość danych

W zależności od ustawień zbierania danych dane dotyczące liczby użytkowników bez awarii mogą mieć niskie wartości lub wartość 0. Oto 2 typowe scenariusze, które mogą powodować niewiarygodne dane dotyczące braku awarii:

  • Jeśli włączysz raportowanie po wyrażeniu zgody, wyłączając automatyczne raportowanie awarii, informacje o awariach będą mogły być wysyłane do Crashlytics tylko od użytkowników, którzy wyraźnie wyrazili zgodę na zbieranie danych. W związku z tym dokładność danych dotyczących liczby sesji bez awarii może być zaniżona, ponieważ Crashlytics ma informacje o awariach tylko od tych użytkowników, którzy wyrazili zgodę na ich gromadzenie (a nie od wszystkich użytkowników). Oznacza to, że dane o czasie bez awarii mogą być mniej wiarygodne i mniej odzwierciedlać ogólną stabilność aplikacji.

  • Jeśli masz wyłączone automatyczne zbieranie danych, możesz użyć opcji sendUnsentReports, aby wysłać raporty z pamięci podręcznej na urządzeniu do Crashlytics. W przypadku tej metody do usługi Crashlytics zostaną wysłane dane o awariach, ale nie dane o sesjach. Spowoduje to, że wykresy w konsoli będą wyświetlać niskie lub zerowe wartości wskaźników dotyczących liczby sesji bez awarii.