2014-01-24 5 views
4

У меня есть Crashlytics, правильно настроенный в моем приложении. Я вижу отчеты о сбоях.Журнал Crashlytics не отправлен

Я попытался добавить пользовательский журнал в отчеты о сбоях, но ничего не вижу в отчете. Я попытался переместить журнал из обработчика uncaughtException, и в этом случае я вижу журналы.

Так что, если я запишу, когда приложение работает правильно, я вижу журналы в отчете о сбое при сбое приложения, но если я попытаюсь добавить журнал в свой обработчик uncaughtException, эти журналы не будут показаны.

Это правильное поведение?

Я нахожусь на Android.

Для входа я просто использовать:

Crashlytics.log(myLog); 

MyLog является ненулевой непустой строкой (я проверил)

+0

Не могли бы вы вставить весь ваш обработчик исключенных исключений? Я понимаю, что Crashlytics должен делать это сам по умолчанию, хотя, может быть, хорошо, если бы вы также ввели свой код установки Crashlytics. – desseim

+0

Похожа на: http://stackoverflow.com/questions/24336444/trouble-with-logging-my-data-with-crashlytics – saltandpepper

ответ

2

Я думал, что объяснение может быть, что журналы отправляется на сервер асинхронно, и если приложение будет убито до их отправки, вы не увидите их в отчете о сбое. Я проверил, и это не так: даже если вы подождете некоторое время, прежде чем вызывать обработчик по умолчанию, ничего не происходит.

Единственное объяснение на данный момент заключается в том, что обработчик Crashlitycs uncaughtException вызывается перед моим.

Так, чтобы исправить проблему, достаточно зарегистрировать обработчик после вызова Crashlytics.start

4

Вы правы вы должны переместить Crashlitycs.start перед регистрацией обработчика uncaughtException.

+0

Это правильно - добавьте ваш обработчик * после этого *, чтобы он мог получить вызов раньше, чем по умолчанию обработчик для Crashlytics. Кажется, что (по крайней мере, в версии 1.1.10), что сообщения журнала обрабатываются асинхронно в Crashlytics, поэтому вам может понадобиться 'Thread.sleep()' в течение 1-2 секунд, прежде чем передавать исключение в Crashlytics 'UncaughtExceptionHandler' –

+0

Может ли кто-нибудь еще разобраться в этом? У меня есть Crashlytics, регистрирующий некоторые значения отладки, и он отображается в логарифме, но он никогда не отправляется с отчетами о сбоях. Журналы отладки разбросаны повсюду, поэтому я уверен, что некоторые из них должны быть сохранены до сбоя, и он не отправляет как исключенные исключения, так и нефатальные исключения –

Смежные вопросы