Когда отправляются пользовательские журналы Crashlytics?
У меня есть BaseActivity, которое я использую в качестве родителя для всех моих действий. Я хотел бы регистрировать события Activity (onCreate(), onStart(), onResume() и т. Д.) В Crashlytics, поэтому, когда происходит сбой, я знаю, что делал пользователь и какие операции были активны в данный момент. Я добавил следующий код для всех методов, которые я хочу регистрировать:
CrashlyticsCore.getInstance().log(getClass().getSimpleName() + ".onResume()");
Мне интересно, если это хорошая идея, чтобы сделать это. Журналы отправляются только в случае сбоя? Я не буду спамить на сервере и производить ненужные сетевые звонки для пользователей? Возможно, есть лучший способ реализации хлебных крошек с Crashlytics?
1 ответ
Как следует из названия, Crashlytics будет запускать отчет (и отправлять журнал) только после сбоя и будет содержать до 64 КБ истории журнала, как указано в документации: "Чтобы убедиться, что отправка отчетов о сбоях имеет минимальное влияние на устройствах вашего пользователя максимальный размер журналов Crashlytics составляет 64 КБ. Если размер журнала превышает 64 КБ, самые ранние зарегистрированные значения будут сброшены для поддержания этого порогового значения ".
Если вы спросите мое личное мнение, это не хорошая практика или бесполезно регистрировать каждый onCreate
, onResume
, Отчет Crashlytics уже будет содержать трассировку стека, дающую вам представление об ошибке.
Если вы обнаружили исключения и хотите их записать, вы можете сделать это, объясняя здесь, позвонив Crashlytics.logException(e);
, Опять же, только 8 из них будут сохранены: "Для любого отдельного сеанса приложения сохраняются только последние 8 зарегистрированных исключений".